您为不同的C/C++编译器推荐了什么编译器警告级别?
gcc和g ++会让你在默认级别上获得很多东西.我发现对我来说最好的警告级别是'-Wall'.我总是试图删除修复它生成的警告的代码.(即使是愚蠢的关于使用括号进行逻辑优先规则或者说我的意思是'if(x = y)')
对于不同的编译器,您最喜欢的级别是什么,例如Sun CC,aCC(HPUX?),Visual Studio,intel?
编辑:
我只想指出我在gcc/g ++上没有使用"-Werror"(但我确实理解它的实用性),因为我使用:
#warning "this is a note to myself"
在我的代码中的几个地方.所有编译器都了解#warning宏吗?
当我意识到假设一个int将是一个指向长度为4个字节的指针时,我可能没有完全安全地进行编程.
因为C++的基本类型的某些方面(例如int的大小)是实现定义的.
如果您正在处理具有32位有符号整数样本的某些内容(例如波形),该怎么办?您将字节指针转换为(int*)并一次处理一个样本.
我只是很好奇获取4字节指针的"安全方式"是什么,如果未来某个时候MSVC委员会决定int现在是8个字节,那就不会停止工作.