警告C4552:'<':运算符无效; 预期的操作员有副作用

jtm*_*mon 3 c++ visual-c++-2010

我的程序中有一堆循环.我得到这些错误的行如下:

for (size_t i=0; i++;i<student.length())
Run Code Online (Sandbox Code Playgroud)

for (int i=0; i++; i<13)
Run Code Online (Sandbox Code Playgroud)

似乎无法弄清楚:/我在size_t类型的第一个循环中创建了迭代变量,因为.length函数返回size_t变量(或互联网说的那样).即使这是问题,我也看不出为什么我会在第二个循环上得到错误.

Sha*_*our 6

您有终止条件并且操作被翻转,这:

for (size_t i=0; i++;i<student.length())
Run Code Online (Sandbox Code Playgroud)

应该:

for (size_t i=0;i<student.length(); i++)
Run Code Online (Sandbox Code Playgroud)

对于第二个for循环也是同样的问题.这是有用的参考.