摘要: 一、简述三种关键字使用 const:定义常变量,即只读变量。 enum:枚举类型,在实际问题中有些变量的取值被限定在一定的范围内,例如一个星期七天,一年十二个月,如果把这些变量说明为整形,字符型等类型显然是不合适的,为此有了enum枚举类型,在枚举类型的定义中列举出所有可能的值,被说明为该类型的变量 阅读全文
posted @ 2018-12-25 10:40 long_ago 阅读(826) 评论(0) 推荐(0) 编辑
摘要: 一、struct关键字与柔性数组 c语言中的struct可以看做变量的集合,struct中的每个数据成员都有独立的存储空间 柔性数组:柔性数组在C99中也称之为伸缩型数组,是C99的扩展,简言之就是struct结构里的标识占位符(不占用struct的空间),柔性数组的结构只能在堆上生成。 声明柔性数 阅读全文
posted @ 2018-12-25 10:26 long_ago 阅读(813) 评论(0) 推荐(0) 编辑
摘要: 一、数据类型所占用字节数与机器字长与编译器有关,遵循的几条规律如下: sizeof(short int )<=sizeof(int) sizeof(int)<=sizeof(long int) short int 至少应为16位(2个字节) long in 至少应为32位(4个字节) 二、常见数据类 阅读全文
posted @ 2018-12-25 08:27 long_ago 阅读(16661) 评论(0) 推荐(2) 编辑
摘要: 一、c语言五大内存分区 二、可执行程序程序三段-Text段,Date段,Bss段 1.一个程序的3个基本段:text段,dtae段,bss段 text段在内存中被映射为只读,但date段与bss段是可写的 text段:代码段,就是放程序代码的,编译时确定,只读 date段:存放在编译阶段(而非运行时 阅读全文
posted @ 2018-12-24 09:39 long_ago 阅读(6709) 评论(0) 推荐(1) 编辑
摘要: 一、static关键字三个作用 定义全局静态变量,定义局部静态变量,定义静态函数 二、c语言中static作用 (1):不想被释放的时候可以用static修饰。比如修饰函数中存放在栈空间的数组,如果不想让这个数组在函数调用结束释放则可以使用static修饰。 (2):考虑到数据本地化与代码范围的好处 阅读全文
posted @ 2018-12-23 21:36 long_ago 阅读(1514) 评论(0) 推荐(0) 编辑
摘要: 虽然const定义的是变量但又相当于常量,说它是常量又有变量的属性,所以叫常变量。 const定义的变量是不允许改变的,不允许给他重新赋值,必须在定义的时候赋值。 2.const关键字作用 const用于定义常量,const定义的常量编译器可以对其进行数据静态类型安全检查 const修饰函数形参,当 阅读全文
posted @ 2018-12-23 20:36 long_ago 阅读(1203) 评论(0) 推荐(0) 编辑
摘要: 数据类型关键字(12个):char,double,enum,float,int,long,short,signed,unsigned,struct,union,void 控制语句关键字(12个): 循环语句:for,do,while,break,continue 条件语句:if,else,goto 阅读全文
posted @ 2018-12-23 16:30 long_ago 阅读(845) 评论(0) 推荐(0) 编辑
摘要: c语言中用到很多宏定义 ,为了头文件被重复用到#ifndef #define,#ifdefine edfif等条件编译 宏不是语句,结尾不用加“;”,否则会被替换进进程中 #表示这是一条预处理指令 如果写宏不止一行,则在结尾加反斜杠使多行能连接上,但第二行要对齐,否则空格也会作为替换文本的一部分 2 阅读全文
posted @ 2018-12-21 12:17 long_ago 阅读(10513) 评论(1) 推荐(3) 编辑
摘要: main()函数不一定是程序的入口,在内核中可以使用链接器设置程序的开始地方。当内核使用一个exec函数执行c程序的时候,在main函数之前要先调用一个特殊的启动例程,可执行程序将此例程指定为程序的起始地址。启动例程从内核获取命令行参数和环境变量,然后为调用main函数做好准备。 2.exit(), 阅读全文
posted @ 2018-12-20 21:31 long_ago 阅读(736) 评论(0) 推荐(0) 编辑
摘要: 预处理--编译--汇编--链接 预处理:用于将所有#include头文件及#define等宏定义替换成真正的内容,预处理后的得到的仍然是文本文件,但体积会大。 1.将头文件中的内容(源文件之外的文件)插入到源文件中 2.进行了宏替换的过程,定义和替换了由#define指令定义的符号 3.删除注释的过 阅读全文
posted @ 2018-12-20 20:20 long_ago 阅读(3013) 评论(0) 推荐(1) 编辑