warning: deprecated conversion from string constant to ‘char*’
2008-03-04 10:51:27| 分类: 默认分类 | 标签: |字号大中小 订阅
warning: deprecated conversion from string constant to ‘char*’
isos编译的时候,这个警告影响编译通过。
解决方法:把 char * 改成 static const char * 的话这个 Warning 就不会出现了。
尽可能不要用GCC 4.2来编译老的程序,4.2之后又有比较严格的C标准的验证,很麻烦
GCC 4.2的问题在于:
在4.2下用默认编译选项
int main()
{
char *t = "Testing!";
fprintf(stdout,"%s",t);
return 0;
}
warning: deprecated conversion from string constant to ‘char*’
只要把 char * 改成 static const char * 的话这个 Warning 就不会出现了。估计是新一代的 GCC 怕程序员在代码中用了 char * 时又不注意的话容易出现越界操作的错误,所以给出个小小的 warning 来。
isos编译的时候,这个警告影响编译通过。
解决方法:把 char * 改成 static const char * 的话这个 Warning 就不会出现了。
尽可能不要用GCC 4.2来编译老的程序,4.2之后又有比较严格的C标准的验证,很麻烦
GCC 4.2的问题在于:
在4.2下用默认编译选项
int main()
{
char *t = "Testing!";
fprintf(stdout,"%s",t);
return 0;
}
warning: deprecated conversion from string constant to ‘char*’
只要把 char * 改成 static const char * 的话这个 Warning 就不会出现了。估计是新一代的 GCC 怕程序员在代码中用了 char * 时又不注意的话容易出现越界操作的错误,所以给出个小小的 warning 来。
解决GCC 4.2编译警告:字符串常量转换为char*
本文探讨了在使用GCC 4.2编译器时遇到的一个常见警告,并提供了修改代码以消除此警告的方法。通过将字符串常量从char*改为static const char*,可以避免编译过程中的错误提示,从而顺利通过编译。
1475

被折叠的 条评论
为什么被折叠?



