找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1443|回复: 7
打印 上一主题 下一主题
收起左侧

多个C语言文件是怎样划分的?为什么main.c中定义了一个变量其他文件无法使用?

[复制链接]
跳转到指定楼层
楼主
ID:904095 发表于 2022-11-21 22:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本人新手 1 想弄清楚多个C文件是怎样划分的 2  为什么main.c中定义了一个变量  在其他的.c文件中无法使用该变量呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1044091 发表于 2022-11-21 23:53 | 只看该作者
一般以文件形式存放对应功能的驱动程序时,会创建 2 个文件,一个是.c 源文件,另一个是.h 头文件。

源文件通常存放的是外设的驱动程序,比如按键检测函数;而头文件通常用来存放管脚定义、变量声明、函数声明等。

要想变量被其他的函数引用,要在一个.h头文件中定义这个变量,其他要用到变量的.c文件包含这个头文件。
回复

使用道具 举报

板凳
ID:752974 发表于 2022-11-22 08:21 | 只看该作者
看看书,什么是全局变量,什么是局部变量!
回复

使用道具 举报

地板
ID:1053191 发表于 2022-11-22 08:26 | 只看该作者
一个是局部变量一个是全局变量
回复

使用道具 举报

5#
ID:1053191 发表于 2022-11-22 08:26 | 只看该作者
全局变量就是整合文件中都可以用,局部变量就是单个函数内可以用
回复

使用道具 举报

6#
ID:155507 发表于 2022-11-22 08:50 | 只看该作者
看看书,C语言在多文件中如何声明外部变量
回复

使用道具 举报

7#
ID:277550 发表于 2022-11-22 10:20 | 只看该作者
看看extern 用法
回复

使用道具 举报

8#
ID:77589 发表于 2022-11-23 14:57 | 只看该作者
一、C文件的划分一般按功能模块来分;
二、在一个C文件定义一个变量,想要在其它C文件中使用,我用过以下两种方法:
1、如果在c1.c中定义char a;  
如果想在c2.c中使用,需要加上"extern char a;"
如果想在c3.c中使用,需要加上"extern char a;"
..........
2、如果在c1.c中定义char a;  那么在c1.h中写上"extern char a;",
如果想在c2.c中使用,需要加上include "c1.h"
如果想在c3.c中使用,需要加上include "c1.h"
..........
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表