int d = year%100;
int c = year/100;
int valueA = (int)(((13*monthnumber)-1)/5);
int valueB = (int) d/4;
int valueC = (int) c/4;
int weekDay = (d + valueA + d + valueB + valueC - 2*c);
int remainder %= weekDay/7;
我试图使用模数赋值运算符,但不断收到系统错误,说明' ='预期而不是'%='
有问题的代码是最后一行
请帮助
答案 0 :(得分:2)
int remainder %= weekDay/7;
等同于
int remainder = remainder % weekDay/7;
这是没有意义的,因为你刚刚宣布remainder
,所以它没有以前的值。
如果您之前声明了remainder
变量,则可以使用:
remainder %= weekDay/7;
答案 1 :(得分:2)
%=不能用于尚未分配值的变量。
var %= {value};
相当于
var = var % {value};
但是在你使用它的方式中,余数还没有分配给它的值。所以没有任何意义。
答案 2 :(得分:1)
因为您使用int remainder
声明了一个变量,并且使用%=
无法实现其初始化
答案 3 :(得分:1)
你可能只是想这样做:
int remainder = weekDay % 7;