c学习笔记

来源:互联网 发布:修改图片文字软件 编辑:程序博客网 时间:2024/06/09 17:39

1.新增关键字:

inline restrict _BOOl _Complex _Imaginary

2.输出前缀 %#x, %#o

​3.short类型使用h前缀

4. \f 活动位置移到下一页的开始处

\n 活动位置移到下一行的开始处

\r 活动位置移到当前行的开始处

5.limits.h inttypes.h

6.size_t用%zd输出 ptrdiff_t用%td

7.sizeof(类型)或变量

8.scanf里的*,指的是跳过相应的输入项

9.除法趋零截尾

10.stdbool.h

11.数组是一种类型(复合类型)

12.switch里的default不是必须的

13.数组使用下标初始化方法

14.VLA可变长数组,必须是自动存储,(声明时不能进行初始化)

15.复合文字 (int []){1,2,6}, (struct person) {"nihao", 34}

16.变量声明可以在代码块中的任何位置,可以出现在for的控制部分,变量只会在需要它时才占用内存

17. const 不变性:不能被程序必变

volatile 易变性: 除了可被程序改变外还可被其他代理改变,防止编译器做出错的假设

const和volatile可以一起使用,表示只能被其它代理改变

restrict 限定的: 只可用于指针,表明指针是访问一个数据对象的惟一且初始的方式,支持编译优化

18.struct book {char title[16];} golang = {“the golang language”};

19.结构支持指定初始化项目

20.伸缩型数组成员 struct book {char title[16]; char content[];};

21.#运算符,字符串化

22.##运算符,预处理器的粘合剂

21.可变宏:#define PR(…) printf(__VA_ARGS__)

22.内联函数 inline,编译器在优化内联函数时,必须知道函数的定义。static inline不会产生函数本身代码,

而是直接嵌入,如果不加static,则该函数有可能被其它单元所调用,一定会产生函数本身代码。

0 0
原创粉丝点击