单片机C语言中是否可把指针和数组为位类型?为什么?
答案:2 悬赏:10 手机版
解决时间 2021-07-20 15:46
- 提问者网友:蓝莓格格巫
- 2021-07-20 04:50
mcs-51 单片机
最佳答案
- 五星知识达人网友:杯酒困英雄
- 2021-07-20 06:21
不可以的.标准c语言中没有位类型的关键字.位类型只是针对keil c进行的扩展.这是为了适应51单片机因ram空间小而特殊扩展出来的.
c语言不是专为51这种单片机服务的.所以它没有这种功能.特殊编译器(如keil c)可以造出这样的位类型.是因为51单片机有位空间,为了能让用户使用这个空间,keil c进行的特殊的处理.
而且根据基础知识,数据的最小单元就是字节了.也就是说c语言针对的最小数据类型就是字节.一个字节是8位.说明位比字节还要小.所以c语言里的数组和指针不能处理这样的单元.
不过把只是扩展出来,c语言为了解决这样的问题,可以使用位域.
全部回答
- 1楼网友:山有枢
- 2021-07-20 06:36
当然是不可以的,数组是用来定义什么的,在C语言中是字符和字符串对吧,一个字符就是两个字节,而一个字节就一位着有8位,位定义是专门用来控制那一位的,你用字节去控制位怎么控制啊???
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯