c语言逗号运算符举例 C语言程序中的for循环语句有时要用逗号表达式,这里的逗号表达式具体有什么作用啊?

C语言程序中的for循环语句有时要用逗号表达式,这里的逗号表达式具体有什么作用啊?逗号运算符是C中的最低优先级,由它分隔的表达式从左到右求值。例如,For(I=0,j=strlen(s)-1,I…]}

C语言程序中的for循环语句有时要用逗号表达式,这里的逗号表达式具体有什么作用啊?

逗号运算符是C中的最低优先级,由它分隔的表达式从左到右求值。

例如,

For(I=0,j=strlen(s)-1,I

…]}]这里不能使用分号,否则会与For中用于分隔循环控制的三条语句的分号混淆。

逗号运算符也适用于其他密切相关的结构,例如交换两个变量的值。它可以写成

TMP=a,a=B,B=TMP

但使用时要小心。分号也不错。

逗号表达式的运算规则?

C语言提供了一个由逗号运算符连接的公式,称为逗号表达式。逗号运算符也称为顺序求值运算符。

1. 一般形式

表达式1,表达式2从左到右依次计算每个表达式的值,“表达式n”的值就是整个逗号表达式的值。

例如,逗号表达式“a=3*5,a*4”=60的值:首先解出a=3*5,得到a=15;然后求出a*4=60,所以逗号表达式的值=60。

另一个例子是逗号表达式“(a=3*5,a*4),a 5的值是20:首先解a=3*5,得到a=15;然后解a*4=60;最后解a 5=20,所以逗号表达式的值是20。

注意:逗号不会到处出现,它们都是逗号运算符。在许多情况下,逗号仅用作分隔符。