#define M “hello world”
char * str = M;
这样写会存在问题吗?本人个人觉得会有问题。
本人的理解是:原因是str是一个随机值,直接指向了内存中的某一个位置,那么对它赋值后相当于直接修改了该地址后的内容,在某些时候(这个概率应该很低)应该会引起系统异常。
char * str = M;
这样写会存在问题吗?本人个人觉得会有问题。
本人的理解是:原因是str是一个随机值,直接指向了内存中的某一个位置,那么对它赋值后相当于直接修改了该地址后的内容,在某些时候(这个概率应该很低)应该会引起系统异常。
解决方案
5
VC编译选项加/EP /P(项目、属性、配置属性、C/C++、预处理器、预处理到文件:是,预处理取消显示行号:是),重新编译,查看宏展开后对应的.i文件。gcc加-E http://bbs.csdn.net/topics/391003898
20
5