sizeof(int)*p是什么意思4*P
枚举和#define宏的区别
1),#define 宏常量是在预编译阶段进行简单替换。枚举常量则是在编译的时候确定其值。
2),一般在编译器里,可以调试枚举常量,但是不能调试宏常量。
3),枚举可以一次定义大量相关的常量,而#define 宏一次只能定义一个。
typedef的注意点
typedef 的真正意思是给一个已经存在的数据类型(注意:是类型不是变量)取一个别
名,而非定义一个新的数据类型。
const int i ,int const i,如果将int变为struct的结构体也是一样的意思
typedef 重定义之后,类型就不支持类型扩展了
“\”有转义符合接续符号的意思
y=x/*p 实际上,编译器把/*当做一段注释的开始了,可以这样修改 y=x / *p y=x/(*p)
几个似非而是的注释问题
A),int/*...*/i;
B),char* s="abcdefgh //hijklmn";
C), //Is it a \
valid comment?
D), in/*…*/t i;
编译器的确会将注
释剔除,但不是简单的剔除,而是用空格代替原来的注释。
B),我们知道双引号引起来的都是字符串常量,那双斜杠也不例外。
C),这是一条合法的注释,因为\是一个接续符。关于接续符,下面还有更多讨论。
D), 前面说过注释会被空格替换,那这条注释不正确就很好理解了。
明天:函数的预编译和参数列变问题