我真的很困惑這個簡單的問題。 這裏是我的代碼:string.length()導致問題
#include <iostream>
#include <string>
int main()
{
std::string str = "bb";
int counter;
for (counter = str.length() - 1; counter >= str.length() - 2; counter--)
{
std::cout << "counter: " << counter << std::endl;
}
}
基本上,它應該只打印兩行,然後終止該程序,但它使印刷生產線。事實上,循環不會在counter = -1停止,這很奇怪!爲什麼會發生?
在C++的全局命名空間中使用'void main()'是非法的。你應該使用'int main(void)'來代替。 – MikeCAT
或'int main()'。 – TartanLlama
@MikeCAT:你的意思是非法?!它工作正常。 – Diamond