发新话题
打印

初学VC或C++者常犯的几个错误(三)

初学VC或C++者常犯的几个错误(三)

作者:Christopher
  4)每次编译都把几乎所有的文件编译一遍,速度太慢
一般都是因为改动了系统时间引起的。编译是VC根据文件的修改时间确定哪个文件需要编译
哪个不需要。最简单的办法当然是把系统时间改回去然后重新编译一次就行了。如果因为
某种原因不想改系统时间,那就把所有的源文件略作修改然后保存,再编译就可以保证所有
的源文件都比可执行文件要老了。

2.语法问题
1)宏定义
看下面的代码
#define BBB 200
#define AAA 100+BBB

int a;
a = AAA*2;

请问a等于多少,很多人会以为是600其实应该是500,因为宏的使用只是在编译时简单替换
,宏本身并没有什么优先级,直接替换的结果是 a = 100 + 200*2而不是理想中的
a = (100 + 200)*2。

2)指针的问题
char* b,c;
char k;

k = 'a';
b = &k;
c = b;
请问c为多少,可能有相当一部分人以为c等于k的地址,其实c应该等于k的地址的最后一个
字节,c的类型是字符而不是字符指针。

TOP

发新话题