1、=与==不同
2、y = x /*p
/*被编译器理解为一段注释的开始
3、不同机制的表示和打印(八进制、十六进制)
int a, b, c;
a = 077;
b = 0xf;
c = 0XE;
printf("a = %d\nb =%d\nc = %d\n", a,b, c);
printf("a = %o\na =%x\na = %d\n", a,a, a);
4、用单引号引起的一个字符代表一个整数。用双引号引起的字符串,代表的却是一个指向无名数组起始字符的指针,该数组被双引号之间的字符以及一个额外的二进制值为零的字符’\0’初始化。
5、a+++++b的含义是什么
int a = 1, b = 1, c;
// c = a+++++b;
c = a++ + ++b;
printf("a = %d, b =%d, c = %d\n", a,b, c);
贪心法,又称大嘴法,每一个符号应该包含尽可能多的字符。因此,a+++++b会被分解为a++ ++ +b
6、测试C编译器是否允许嵌套注释
嵌套注释对于暂时移除一块代码很有用,在这块代码之前加上一个注释开始符,在代码之后加上一个注释结束符,就一切OK了。然而,这样做也有缺点:如果用注释的方式从程序中移除一大块代码,很容易让人注意不到代码已经被移除了。但是,C语言定义并不允许嵌套注释。