错误代码:
S = “a##c”;
if(S[i] == "#"){
if(s.length()!=0)
s.pop_back();
}
异常:ISO C forbids comparison between pointer and integer [-fpermissive]
意思是:指针和整数比较出错;禁止指针和整数进行比较。
S[i]是字符,”#”表示一个字符串的首地址。
改正:
if(S[i] == '#'){//字符之间相互比较
if(s.length()!=0)
s.pop_back();
}
本文介绍了一个关于指针与整数比较的常见编程错误,并提供了正确的代码实现方式。错误出现在条件判断中,使用了字符串首地址与字符进行比较,正确的做法是将字符串首地址改为字符。
5951

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



