`

程序员面试宝典.笔记

阅读更多

 

  1. 【C++】::访问全局变量 
  2. 【C/C++】 x++效率最高,读取x,自增 x+=1其次,x,x+1,结果赋给x x=x+1最次,读右x,右x+1,读左,给左x赋值 
  3. 【C/C++】 double←float ↑ long ↑ unsigned ↑ int←char,short 向左的箭头表示必须转换,向上的箭头表示类型不同时转换 
  4. 【C/C++】 隐式转换发生在如下时间: 1,混合类型的算术表达式 2,赋值 3,函数参数传递 4,函数返回值传递 
  5. 【C/C++】 两个变量交换 a=a+b;b=a-b;a=a-b;但是a+b可能会越界 a=a^b;b=a^b;a=a^b; 
  6. 【C/C++】 #include <filename>从标准库路径搜索 #include "filename.h"从用户路径搜索 
  7. 【C/C++】 #define sqr(x) (x*x) int a=5; sqr(2+a)=2+a*2+a 应该为 #define sql(x) ((x)*(x))
  8. 【C/C++】结构体对齐问题。当结构体内的元素的长度都小于处理器的位数的时候,以最长的元素为对其单位。当结构体内的元素的长度都大约处理器位数的时候,以处理器的位数为对齐单位。
  9. 【C/C++】静态变量存放在全局数据区,sizeof只计算所栈中分配额大小
  10. 【C/C++】char str1*="abcdef" sizeof(str1)=4;char str2[]="abcdef"  sizeof(str2)=7。这里要注意,由于当函数的传递数组的时候,都是以指针的形式传递的,所以,void function(char str[]){...sizeof(str)=指针变量的长度...}
  11. 【C/C++】空类的sizeof等于1,继承空类的空类还是1,但是虚继承设计续表多一个指针长度
  12. 【C/C++】void function(int *a) can't modify 实际参数,void function(int **a)  and void function(int&a)can do it
  13. 【C/C++】与java不同,NULL可以被类型转换if((array=(int*)malloc(10*sizeof(int)))==NULL){...}

  14.  

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics