2009-09-05 103 views
0

以下行中的最后一行继续生成“警告C4552:'< =':运算符没有作用;期望的运算符带有副作用”错误,但我不'没有看到它的任何错误...警告C4552:'<=':操作符无效; (C编程)

void countDays(void) { 
int i=0; 
if (birth_month == 2 && birth_day <= 28) { 
    for (i <= what_birthday){ 

回答

13

您在发布的代码中使用了for循环的错误语法,你的意思是这样吗?

for (; i <= what birthday; ++i) {... 

如果你不关心在每次迭代后增加i,你可以使用while循环代替。

while (i <= what_birthday) { ... 

该代码不应该编译根本没有分号。你得到这样的警告:

for (i <= what birthday; ++i;) 

因为虽然它是有效的代码,但它可能不是你想要的。

2

这段代码是等价的:

void countDays(void) { 
int i=0; 
if (birth_month == 2 && birth_day <= 28) { 
{ 

你可能是指while而不是for