C51单片机C语言的基本规则

时间:2023-03-05来源:佚名
C51C语言的基本规则是有限的,可把这有限的规则组合与嵌套起来,就实现了多种多样的功能。
  常量与变量本质是值,不同的变量只是存储结构的不通。表达式最终也是一个值,所以可以通用,可以嵌套。
  指针变量存放的是地址。数组名不是变量,而是地址常量。数组是相同结构的变量的集合。数组指针与数组名可以通用。
  从本质上来说,没有多维数组的存在。因为c语言允许数组元素可以为任何类型的对象,可以是整型变量,字符型变量,结构体变量,当然也可以是数组。所以,多维数组无非就是一维数组的嵌套而已。掌握了这一点,就可以理解二维数组名可以看作是指向指针常量(一维数组名)的指针常量。就这样一路指下去,一直指到底才是变量名。
  结构体(structure),与数组不同的地方就在于,数组必须是同一类型变量的集合,数组是编译系统默认好的一种构造类型数据,而结构体类型需要自己声明,至于存放什么类型的成员,都是自定义的。结构体类型的成员,与数组的成员一样,是可以为任何类型的对象,包括数组和结构体类型。这里也体现了嵌套的优越性。声明了结构体类型,需要定义结构体类型变量。结构体类型名与变量名的区别,就不用多说了,不能因为结构体是自定义类型,就把类型名当作变量来看待。
  结构体变量同样是变量,同其他类型变量一样,可以在声明或定义的同时进行初始化,或者分开进行。与数组名不同的是,结构体变量名不是指针常量,所以相同结构体类型的结构体变量之间可以相互直接赋值,而数组名则不可以。
  c中有字符串类型常量,但是没有字符串类型的变量。字符数组使用嵌套的办法,把一串字符组合成字符串,在c中充当字符串变量的作用。为了使用中的方便,c运行在声明字符数组时用字符串为字符数组初始化,在标准输入输出中,也同样提供了%s格式输入输出以及其他输入输出函数进行字符串的操作。相比较而言,数值数组就没有这么幸运,输入输出必须一个一个变量(元素)的进行。对于字符串的处理,字符指针同样可以,c规定,把字符串常量赋给一个字符指针,就是把这个字符串常量的首地址赋给了这个指针,很明显,这个字符指针实际上变成了一个字符数组,只不过界限不明朗。
  数组与指针的等价关系,提供了很多方便。但是缺点也是有的。首当其冲的就是数组之间不能直接赋值,哪怕是相同类型相同大小的数组之间。因为数组名是指针常量,哪有常量与常量赋值的道理?(提醒一下,数组名在个别时候并不代表数组首地址,而是代表整个数组,比如sizeof(数组名),这里就不能把数组名理解为指针常量了)。第二个缺点,那就是指针的操作无法检查溢出。你定义了一个指针指向一个数组,然后进行指针的运算,数组是有大小有界限的,可是指针无法判断是否超出了你定义的数组范围。这样,一旦指针溢出,进入了其他变量的领地,很明显就会产生不可挽回的错误。
  再简单说说函数的嵌套。对于一个有返回值的函数,引用函数之后返回的是一个确定了类型的数值,既然是数值,当然可以随便使用了。函数自己调用自己,被称为递归。但是C语言本身为了编译的便利,不允许在一个函数里面定义另一个函数。这就造成了C语言的主体构架形式:一个主函数 N个子函数,N=0~多。只有儿子辈的函数,没有孙子辈的函数。函数里不能嵌套函数,但是函数的调用时可以随便套的,几层都没关系。
  说到底,嵌套让简单的语句或者表达式实现了复杂的功能,任何一种程序设计语言都是可以进行大量的嵌套的。c语言的语句嵌套很丰富,光是选择语句、循环语句的自我嵌套和互相嵌套,就把我套蒙了很久。对于我来说,就是认识到嵌套的本质,掌握好嵌套,千万别上了嵌套的套。

相关阅读

变压器常用概念汇总,记住这些,应试无忧,第一季

变压器是常用电气设备,是利用电磁感应的原理来改变交流电压的装置,承担着变配电的重要责任,也是电气专业人员需要学习的重点科目,现将有关变压器的一些概念总结汇总如下,...
2023-04-01
变压器常用概念汇总,记住这些,应试无忧,第一季

20元的开关插座和上百元的开关插座有区别吗?看30年老电工怎么说

现在的插座种类是各式各样的,价格方面也是各不一样,那普通老百姓该如何选择插座呢?这就需要一些小技巧了。接下来就和小编一起来看看开关插座多少钱以及开关插座选购有哪些...
2023-06-11

电容电压为什么不能突变?

【免费下载】 PLC软件下载_PLC软件安装教程_PLC手册下载_PLC案例下载! 【免费学习】 变频器精品课程_西门子PLC精品教程_三菱PLC精品教程! 谈及电容器,我想对于广大电工朋友们而言都...
2023-06-27

值得收藏的上百张电工常用电路图(流量党勿进,全是高清大图)

上百种电路图,接线不求人,记得收藏…… 一、日光灯类 二、断路器、接触器控制回路 三、电动机 延时 四:热电偶 五、电能表 六、其他...
2023-06-11
值得收藏的上百张电工常用电路图(流量党勿进,全是高清大图)

电工基础:三相交流电源(37)

【点击领取】 三菱案例 | 西门子案例 | 电工手册 | 工具箱 软件 【点击获取】 三菱PLC例程117个|西门子PLC例程777个 【点击下载】 2020新电工仿真软件 本次文章是 技成培训 杨思慧老师通...
2023-06-27

热销商品

加厚abs安全帽电工建筑工地程施工领导监理透气防砸头盔可印字V型

这款加厚ABS安全帽专为电工、建筑工地施工人员、领导及监理设计,采用高强度ABS工程塑料,抗冲击、防砸性能优异,有效保障头部安全。帽体加厚设计,增强耐用性与防护等级...
5.8

欧普led筒灯3w孔灯超薄桶灯吊顶天花灯过道嵌入式洞灯客厅5w

欧普LED筒灯是一款高品质嵌入式照明产品,适用于客厅、过道、吊顶等多种场景。采用优质LED光源,提供3W和5W两种功率选择,光线柔和均匀,显色指数高,有效还原真实色彩。超...
7.45

水口钳高硬度模型剪钳电子钳工业级口水剪斜嘴钳偏口斜口专用钳子

水口钳高硬度模型剪钳是一款工业级精密工具,专为电子、模型制作及精细作业设计。采用优质高碳钢材质,经热处理工艺打造,具备卓越的硬度和耐磨性,可轻松剪切金属引脚、...
4.8

170电子剪钳II 如意斜口钳 工业斜嘴钳水口钳 模型剪塑胶钳尖嘴钳

170电子剪钳II如意斜口钳是一款专业级精密工具,集工业斜嘴钳、水口钳、模型剪、塑胶钳与尖嘴钳功能于一体,适用于电子维修、模型制作、手工艺及精密作业。其采用优...
4.5

安全帽国标工地加厚施工领导透气安全头盔建筑工程监理免费印字

本款安全帽严格遵循国家GB 2811-2019标准,专为建筑工程、工地施工及监理人员设计。采用高强度ABS工程塑料,加厚壳体有效抗冲击,保障头部安全。帽体轻盈透气,内置可调...
10

网站栏目