C语言bit型全局变量

我的一个51芯片的控制程序由26个C文件和2个H文件组成,其中整型全局变量用extern在头文件中声明,那bit型全局变量在头文件中如何声明,请赐教,谢谢!你好:比如我在... 我的一个51芯片的控制程序 由26个C文件和2个H文件组成,其中整型全局变量用extern在头文件中声明,那bit型全局变量在头文件中如何声明,请赐教,谢谢!
你好:比如我在main文件上面定义了一组
uchar bdata OUT_temp;
sbit AA = OUT_temp^0;
sbit BB = OUT_temp^1;
sbit CC = OUT_temp^2;
sbit DD = OUT_temp^3;
sbit EE = OUT_temp^4;
sbit FF = OUT_temp^5;
sbit GG = OUT_temp^6;
sbit HH = OUT_temp^7;

在头文件中声明:
extern uchar bdata OUT_temp; //OUT_temp为输出暂存全局变量
那其中的AA;BB等如何声明为全局变量?

高金山先生说的我都试过,不行,因为我有很多个C文件,全局变量必须要在头文件中加以声明;
展开
 我来答
jackpgt
2009-06-03 · TA获得超过679个赞
知道答主
回答量:213
采纳率:0%
帮助的人:0
展开全部
bit型变量可用变量类型,函数声明、函数返回值等,存贮于内部RAM20H~2FH。注意:(1) 用#pragma disable说明函数和用“usign”指定的函数,不能返回bit值。(2) 一个bit变量不能声明为指针,如bit *ptr;是错误的(3) 不能有bit数组如:bit arr[5];错误。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
高金山
2009-06-03 · TA获得超过1万个赞
知道大有可为答主
回答量:4101
采纳率:0%
帮助的人:1988万
展开全部
sbit是什么类型?肯定有重新定义过!

extern sbit AA;
extern sbit BB;
就可以了吧。

其实,要搞全局变量,只需要把变量定义,放在任何函数的外面,就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
倪凡霜0gr
2009-06-03 · 超过29用户采纳过TA的回答
知道答主
回答量:122
采纳率:0%
帮助的人:0
展开全部
enum BOOL {FALSE = 0,TRUE = !FALSE};

C语言(或C++)里本身没有bool这种布尔类型。有些编译器可以识别,那也是因为编译器自己定义了bool类型,比如:#define bool int。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小雕lns
2009-06-03 · TA获得超过127个赞
知道答主
回答量:100
采纳率:0%
帮助的人:76.2万
展开全部
可以试一下这个:先建一个头文件如:thehead.h(是保存为.h类型的)内空如下:
#ifndef HEAD_H
#define HEAD_H
uchar bdata OUT_temp;
sbit AA = OUT_temp^0;
sbit BB = OUT_temp^1;
sbit CC = OUT_temp^2;
sbit DD = OUT_temp^3;
sbit EE = OUT_temp^4;
sbit FF = OUT_temp^5;
sbit GG = OUT_temp^6;
sbit HH = OUT_temp^7;
#endif

再在每要用到上面内容的文件中加#include"thehead.h"语句。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式