1.计算n的几次方的时候只需要把1<<n位即可 eg: for(int i=1;i<=n;i++) { ret=ret<<1; } 2.typedef可以给函数类型重命名,但是不能给函数名重命名, 3.static 有三种用法:
1:修饰局部变量 (改变局部变量生命周期): static 修饰局部变量的同时,可以保证局部变量不会销毁,使得局部变量一直在迭代,但是作用域还是局部的 2:修饰全局变量 : 限制在一个文件内部,其他文件不可以声明之后跨文件进行使用(全局变量本身具有外部链接属性,但是使用static之后,会使得全局变量失去外部链接属性,变成内部属性) 3:修饰函数:作用与全局变量是相似的 也会失去外部函数属性,变成内部链接属性
4.宏的定义宏的方式: #define Add(x,y) ((x)+(y)) 注意这里的括号并不多余,是极其重要的 比如 我2Add 如果没有括号的话 就是2a+b 是错误的
注意:宏不可以替代函数,各自有各自的优势
5.指针=(编号/地址)
- 一个小的内存单元是1byte
- 编号-地址,地址怎么产生呢?
在计算机中,地址线——>1/0(32位的计算机有32根地址线)总共有232个byte,所以我们根据换算的比例,我们可以得出:在32位的机器上我们有4GB的空间内存,
6.&a的时候,取出的是a所占内存的第一个地址(可以顺藤摸瓜知道后面的地址) 7.在输出数据的时候,输出时”l“用于输出长整型,可以用在格式符d、u、o、x前面 8.C语言的注释不支持嵌套 9.
|