我有以下代码,
int count_div ( int A, int B, int K ) {
float div =(float) (B - A) / K;
if ((A % K == 0 ) or (B % K == 0))
return div + 1;
return div;
}
我收到错误消息,
func.c:3: error: expected ')' before 'or'
现在我认为在此之前不需要另一个支架。请指导。谢谢
我有以下代码,
int count_div ( int A, int B, int K ) {
float div =(float) (B - A) / K;
if ((A % K == 0 ) or (B % K == 0))
return div + 1;
return div;
}
我收到错误消息,
func.c:3: error: expected ')' before 'or'
现在我认为在此之前不需要另一个支架。请指导。谢谢
如果要在 C 中使用and
and or
“关键字”,则必须包含<iso646.h>
标题。(但您可能应该只使用||
; 对于大多数了解 C 的读者来说,它更熟悉。)
尝试用“||”替换“或” or 运算符
或者(但不推荐),
#define or ||
#define and &&
...
if ((A % K == 0 ) or (B % K == 0))
...
我不推荐它,因为它真的很不标准。
你的问题不是括号的数量。在几乎所有语言(或至少我使用过的语言)中,声明:
如果 ((A % K == 0 ) 或 (B % K == 0))
应该写成:
如果 ((A % K == 0 ) || (B % K == 0))
C 中没有“或”运算符。试试 || 而不是“或”。