这段代码包括我想要显示的字符串和一个帮助方法,其唯一的功能是显示字符串,在找到冒号时在新行上输入文本。但是,它只对最后一个冒号而不是其他冒号
执行此操作string list = ":hello:chris:";
void displayEntry(){char *colon = ":";
for (int i = 0; i<list.length(); i++) {
char *letter = &list.at(i);
if (strcmp(letter, colon) != 0) {
cout << list[i];
continue;
}
cout << "\n";
}
cout << "\n";
}
答案 0 :(得分:3)
这是因为strcmp
不用于比较单个字符,它会比较整个字符串直到找到NUL字符。
您实际上不需要char*
,只需使用char
和==
。
if (list.at(i) != ':')