梳理(一)

来源:互联网 发布:服务器定时开关机软件 编辑:程序博客网 时间:2024/06/04 00:46

此篇本该一个半月前发出,奈何这两月惰性发作,所以积到现在。

对于C一直想做些整理,这些特别琐碎的知识点无法让我无法用特别连贯的思维去描述,所以会比较乱!另外,我所列述的好多可能是特别浅显的知识,所以此篇并不是为了教些什么,或是表现什么,仅仅是对琐碎的回顾与总结,以及期望在偏差的理解上得到大神的指导。

1)int const *p  和int *const p 此时看const修饰谁,右结合前者指针指向值固定,后者指针值固定。

2)注意整数转换成对应字符是相差48(前提是码表里面有的)。

3)int f(int a), int f(int *a), int f(int &a)及分清楚传值和传值引用,一般直接第一个传值调用的是对应实参的拷贝,第二传址是实参的地址,因此里面变了实参也变了如果不想让他变怎么办,用const修饰啊!第三个是C++引用的概念,它是一种间接的指针。引用可为变量起别名,主要用于参数传递和做函数的返回类型。(此我也是不懂得百度得知)

4)struct 和typdef struct可以认为typedef是直接定义了一种新的变量类型以后就可以直接用了,而struct你要声明某个结构的时候还得再前面加struct(这和c++是有区别的)。

5)EOF是一个整形值,他的数比字符型要多,把ch声明整形防止输入读取字符意外被解释为EOF。

6)用typdef而不是#define来创建新的类型名,例如#define Int* a,b 就是这样类似的错误。

7)static对函数定义或者代码块之外变量声明作用为修改标识符的链接属性从external变为internal标识符的存储类型和作用域不受影响;当用于代码块内修改存储类型从自动变为静态,但是变量的链接属性和作用域不收影响。在程序执行前创建,整个执行期一直存在。

 

9)声明数组时候编译器将根据声明所指定的元素数量为数组保留内存空间然后再创建数组名他的值是一个常量,声明一个指针变量时编译器只为指针本身保留内存空间,它并不为任何整形值分配内存空间,而且指针变量并未被初始化为任何指向现有内存空间。


0 0
原创粉丝点击