课程
/后端开发
/C
/C语言入门
int a=1,b=1;
这种写法有问题吗
2015-07-06
源自:C语言入门 2-3
正在回答
可以这么写。
但是要注意的是这种写法其实就是逗号表达式。
C语言提供一种特殊的运算符——逗号运算符。
逗号运算符,优先级别最低,它将两式联接起来,如:(3+4,6+2)称为逗号表达式,其求解过程先表达式1,后表达式2,整个表达式值是表达式2的值。
举个栗子,
#include <stdio.h> int main() { int a=1,b=5; /*这里定义年龄*/ int c=(a,b); printf("c的值是%d!\n", c); return 0; }
发现没有,运行出来的结果是表达式2的值,即b的值。
Perona
时小七 提问者 回复 Perona
时小七 提问者
Perona 回复 时小七 提问者
你写的是合法的定义语句。C语言可以用逗号隔开来声明多个变量,但这种写法不是逗号表达式,这只是声明语法的一种形式。
@Perona 回答中的第5行,等号的右侧才算是逗号表达式。
蒙蒙达
onemoo 回复 蒙蒙达
举报
C语言入门视频教程,带你进入编程世界的必修课-C语言
1 回答多个变量赋值
4 回答变量的赋值
1 回答变量赋值..
2 回答变量赋值
3 回答变量与赋值