次のコードはcountを0として出力しますが、s.length()は11ですので10011とカウントしないでください。forループがスキップされています
int main() {
clock_t start_time = clock();
string s = "hello world";
int count = 0;
for (int i = -10000; i < s.length(); i++) {
count++;
}
cout << count << endl;
cout << clock() - start_time;
return 0;
}
'int i'ではなく' unsigned int i'を試してください。 –
まだ0を返す@barakmanos – wannabe
[std :: string :: length'](http://en.cppreference.com/w/cpp/string/basic_string/size)によって返される型は* unsigned *です。符号付き整数と符号なし整数の比較は、期待通りに機能しない可能性があります。 –