c ++编程问题

Kha*_*dan -1 c++ visual-c++

对于与"for"一起使用的表达式,我总是得到错误((IntelliSense:表达式必须是可修改的左值)),请帮忙.

for (c=2 ; c <= x -1 ; c++ )
    if ( x % c = 0 )
        cout << "not prime" ;
    else cout << "prime";
Run Code Online (Sandbox Code Playgroud)

Kir*_*rov 6

我想你想比较的结果x % c0.在这种情况下,

if ( x % c = 0 )
Run Code Online (Sandbox Code Playgroud)

这一定是

// --------v
if ( x % c == 0 )
Run Code Online (Sandbox Code Playgroud)

请注意附加=.


原因是,这x % c不会返回可修改的左值并且只使用一个=,你试图分析0结果x % c,这是错误的.