我正在学习C编程(使用代码块IDE(,我想问以下问题:
为什么写错了
int "i=j=0;"
而不是
"int i,j;
i=j=0;" or "int i=0,j=0;"
在第一种情况下,您永远不会声明j
.就 C 语法而言,其他两个版本中的任何一个都很好。
但是,始终在自己的一行上声明每个变量,并且永远不要在同一表达式中使用多个赋值,这被认为是好的风格(这是主观的(。因此,我个人建议这样做:
int i=0;
int j=0;
在分配给它们之前,需要知道名称。因此,这是最接近您要做的事情:
int j;
int i = j = 1; /* OK, j is known */
当涉及到最佳实践时,最好将它们放在单独的行上,如 Lundin 的答案所示。
您没有声明j
,因此由于未声明的变量,您将收到错误。 更好的方法是通过以下方式声明变量:
int a, b;
或者,如果您还想设置该值:
int a, b = 1;
int a = 1, b = 1;