回复 20楼 a7882669
你认为语法没有问题,并不表示编译器不知道,好的编译器会针对一些常见的隐藏错误,设置警告信息出错输出。
比如说常见的无符号与有符号数之间进行比较,double转int,float产生的数据精度损失警告等等。
不同的编译器会输出不同的警告信息,但最终的含义是一样的,就是你的程序可能存在bug.
这也是为什么有一部分程序编译正常,却时不时的出现运行出错的问题。
所以一般大家推荐用最高级别的警告编译参数来编译C/c++程序,力求产生出高质量的代码段。
你可以查看你的编译器说明,打开这个选项进行编译,这个是GCC的,gcc -Wall。
多数国外的程序员都精通几个编译器,他们会把代码放在不同的编译环境中进行测试,一般能通过大多数编译器的代码都是值得信懒的。
我们都在路上。。。。。