我有一个程序,使用 for 循环打印出字符串的字符。它还必须反向打印相同的字符,这就是我遇到问题的地方。有人可以帮我弄清楚为什么第二个 for 循环没有执行吗?
int main()
{
string myAnimal;
cout << "Please enter the name of your favorite animal.\n";
cin >> myAnimal;
// This loop works fine
int i;
for(i = 0; i < myAnimal.length(); i++){
cout << myAnimal.at(i) << endl;
}
// This one isn't executing
for(i = myAnimal.length(); i > -1; i--){
cout << myAnimal.at(i) << endl;
}
return 0;
}
您需要首先将 i 分配给长度减一,或数组中的最后一个索引值。
for(i = myAnimal.length()-1; i >= 0; i--){
cout << myAnimal.at(i) << endl;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)