主题:[讨论]这个警告怎么回事?
zlinsc
[专家分:0] 发布于 2010-05-23 11:20:00
warning C4018: '<' : signed/unsigned mismatch
对应内容:for(j=0;j<strlen(s[0]);j++)
这个警告是怎么回事?怎么改?
回复列表 (共3个回复)
沙发
caomang [专家分:150] 发布于 2010-05-23 16:52:00
strlen(s[0])返回的是无符号的数,不能和有符号的相比较
可以改写成:
for(unsign int j=0;j<strlen(s[0]);j++);
板凳
zlinsc [专家分:0] 发布于 2010-05-24 13:01:00
[quote]strlen(s[0])返回的是无符号的数,不能和有符号的相比较
可以改写成:
for(unsign int j=0;j<strlen(s[0]);j++);[/quote]
应该是unsigned吧,改了之后会提示错误,我试了一下先赋值,解决了。
3 楼
姚姚的梦 [专家分:160] 发布于 2010-05-24 17:12:00
类型不匹配,需进行类型转换!
我来回复