出现错误:“ISO C++ 禁止指针和整数 [-fpermissive] 之间的比较”如何解决?
Posted
技术标签:
【中文标题】出现错误:“ISO C++ 禁止指针和整数 [-fpermissive] 之间的比较”如何解决?【英文标题】:Getting error: "ISO C++ forbids comparison between pointer and integer [-fpermissive]" How do I fix? 【发布时间】:2016-01-17 22:16:43 【问题描述】:我正在制作一个将英语句子转换为猪拉丁语的程序。我在第 16 行不断收到错误“ISO C++ 禁止在指针和整数 [-fpermissive] 之间进行比较”。有什么帮助吗?
void wordfinder();
string word;
string engSent;
int x;
int main()
cout << "Enter a sentence: ";
getline(cin, engSent);
string word = "";
for (x = 0; x < engSent.length(); x++)
if (engSent[x] == " " || engSent[x] == "," || engSent[x] == ".")
wordfinder();
word = "";
return 0;
void wordfinder()
word = engSent.substr(0,engSent[x]);
cout << word;
【问题讨论】:
" " 是一个字符串。你想要 ' ' 这是一个字符。 @AlanStokes:欢迎来到 Stack Overflow!这是评论区。答案在答案部分,你可以在那里找到:↓↓↓↓↓↓ 【参考方案1】:检查字符不是字符串:
if (engSent[x] == ' ' || engSent[x] == ',' || engSent[x] == '.')
【讨论】:
以上是关于出现错误:“ISO C++ 禁止指针和整数 [-fpermissive] 之间的比较”如何解决?的主要内容,如果未能解决你的问题,请参考以下文章