share your ideas
分类: C/C++
2013-08-25 11:41:37
Static 的作用总结:
1. 在函数体内,一个被声明为静态的变量,函数在调用过程中维持值不变。
2. 在模块内,函数体外,静态的变量可以被模块内的函数访问,不能被其他的模块使用。本地的全局变量。
3. 在模块内,一个被声明为静态的函数只可被这一模块的其他函数调用,函数限制在模块的本地范围内。
4. 静态的全局变量在静态存储区,非静态的全局变量也在静态存储区,存储方式相同,但是作用域不同,静态的全局变量只在本地的源文件有效,非静态的全局变量可在各个源文件都有效。
5. 局部变量改变为静态,改变了存储方式,改变了生存期,把全局变量改为静态变量,改变了作用域,限制了其作用域。
6. Static 的全局变量与普通的全局变量的区别:static 只初始化一次,防止其他的文件的应用。
7. Static 的局部变量与普通的局部变量的区别:static 之初始化一次,第二次的调用依据上一次的结果。
8. Static 的函数:与普通的函数的区别:static 的函数在内存只有一份的拷贝,其他的函数,每次的调用维持一个拷贝。
const 的作用总结:
1. Char * const p ; 常量指针 ,p 的值(定义的指针)不可以改变
2. Char const *p; 指向常量的指针,指针指向的值不可以改变。
3. Const Char *p 和char const *p 相同。
Signed Char的取值范围: -128~ 127
位的操作:
Oxr 非: 如果两个位不同,结果为1,相同结构为0;
And 与: 如果两个位都为1 ,结果为1,否侧结果为0;
Or 或: 如果两个位都为0,结果为0,否则结构为1
Continue 和Break的用法总结:
1. 可以用于c 提供的三种循环结构。
2. break 可用于 C 提供的全部三种循环结构,其作用是跳出循环。如果 break 位于循环嵌套中的一个内循环,则仅跳出该内循环。
3. continue 会致使循环跳过循环体中余下的语句,转而判断循环条件是否仍然成立,然后选择是否再次进入循环体。如果 continue 位于循环嵌套中的一个内循环,则其仅能影响该内循环的执行情况,而不会对外循环造成任何影响。
4. break 是结束循环,continue 是结束本次循环。循环是有很多次,break 之后不再循环,continue 结束本次循环,进行下次循环的判断。
5. break 和 continue 都是无条件的转移;
6. 都出现在循环体内,通常是二分支的两个分支。
7. Break 指向出口,continue 指向入口。