当前位置:首页 » 编程语言 » 逗号c语言作用
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

逗号c语言作用

发布时间: 2022-06-17 20:21:57

c语言中逗号的作用,详细点

在C语言中,多个表达式可以用逗号分开,其中用逗号分开的表达式的值分别结算,但整个表达式的值是最后一个表达式的值。
假设b=2,c=7,d=5,
a1=(++b,c--,d+3);
a2=++b,c--,d+3;
对于第一行代码,有三个表达式,用逗号分开,所以最终的值应该是最后一个表达式的值,也就是d+3,为8,所以a1=8。
对于第二行代码,那么也是有三个表达式,这时的三个表达式为a2=++b、c--、d+3,(这是因为赋值运算符比逗号运算符优先级高)所以最终表达式的值虽然也为8,但a2=3。
逗号运算符的优先级最小

❷ c语言中逗号运算符的功能和使用方法

C
语言中,逗号(,)也可以是运算符,称为逗号运算符(Comma
Operator)。逗号运算符可以把两个以上(包含两个)的表达式连接成一个表达式,称为逗号表达式。其一般形式为:
子表达式1,
子表达式2,
...,
子表达式n
例如:
a
+
b,
c
=
b,
c++
逗号运算符的优先级是所有运算符中级别最低的,通常配合
for
循环使用。逗号表达式最右边的子表达式的值即为逗号表达式的值。上例中,c++
的值(c
自增之前的值)即为该表达式的值。
逗号运算符保证左边的子表达式运算结束后才进行右边的子表达式的运算。也就是说,逗号运算符是一个序列点,其左边所有副作用都结束后,才对其右边的子表达式进行运算。因此,上例中,c
得到
b
的值后,才进行自增运算。

❸ 在C语言中逗号运算符有什么用呢

等下。。答错了。。还需要理解一下神马是逗号表达式。。我前面说的和uuyyhhjj与delta_charlie的意思一样,但其实我们都搞错了。你可以自己把我们的例子都运行一下,看看是不是这样。下面我感觉应该是我正确的理解。
逗号表达式是所有运算符中优先级最低的,比赋值运算符还要低。他的作用就是把每个表达式都算一遍,并且把最后一个表达式返回的值作为逗号表达式的值。(把其他的都不管了)

像你说的那个,如果是
x=200,500;
(没有括号),x就会等于200,然后上面整个式子的值是500。

但是有括号的话, (200,500) 就是一个单独的式子,他的值是500,所以x=(200,500)最后赋值给x就是500

举几个例子,

x=(21,22,23,24,25);
这个里面,先算括号里的,前面的21到24算过后都被丢弃,括号里的表达式的值是25。之后执行赋值运算,x的值就变成括号里表达式的值,25了。
如果编译
int x;
int a;
x=(21,22,23,24,25);
cout<<"x="<<x<<endl;
会输出
x=25

x=21,22,23,24,25;
这行整个是一个表达式。
逗号运算符会分别计算表达式x=21、22、23 、24、25(单独一个数字也可以叫做表达式)。
然后他会用最后一个表达式作为逗号表达式的值。所以整个式子(整个一行)的值是25。但是因为这个值并没有返回给别的变量,他就也被丢弃了。
如果编译
int x;
x=21,22,23,24,25;
cout<<x;
输出是21。

a=(x=21,22,23,24,25);
这个里面,除了给x赋值,它又把逗号表达式的值25赋给a。
如果编译
int x;
int a;
a=(x=21,22,23,24,25);
cout<<"x="<<x<<endl;
cout<<"a="<<a<<endl;

会输出
x=21
a=25

a=(x=21,22,23,24,x*25);这个里,赋值给x之后又利用x计算了逗号表达式的值,21*25,最后把这个值赋给a
如果编译
int x;
int a;
a=(x=21,22,23,24,x*25);
cout<<"x="<<x<<endl;
cout<<"a="<<a<<endl;
会输出
x=21
a=525

简单来说,逗号的作用就是执行每一个表达式,然后用最后一个表达式作为他它的值。
看这个可能可以帮助你理解 http://blog.csdn.net/great_ghoul/article/details/1779768
如有疑问,欢迎您的追问。

❹ c语言,逗号的用处和使用方法………………

c语言提供一种特殊放入运算符----逗号运算符
表达式1,表达式2
逗号表达式的求解过程是:先求表达式1,再求表达式2.整个逗号表达式的值是表达式2的值,如表达式“3+5,6+8”的值为14。又如,逗号表达式:“a=3*5,a*4”,赋值运算符的优先级别高于逗号运算符,因此应先求解a=3*5.经计算和赋值后得到a的值为15,然后求解a*4,得60.整个逗号表达式的值为60.
逗号表达式的一般形式可以扩展为
表达式1,表达式2,表达式3,。。。表达式n。它的值为表达式n的值
逗号运算符是所有运算符中级别最低的。

❺ C语言中逗号运算符怎么用

逗号运算(,)是一个多元运算,逗号运算符可以把两个以上(包含两个)的表达式连接成一个表达式,称为逗号表达式。其一般形式为:
子表达式1, 子表达式2, ..., 子表达式n

它的整个的值都是最后一个表达式的值,这里所说的值是从左向右运算的。逗号运算符的优先级是所有运算符中级别最低的。

例如:

inta=(表达式1,表达式2);//则a的结果是表达式2的结果

❻ C语言中逗号运算符怎么用

一、用法:

1、当顺序点用,结合顺序是从左至右,用来顺序求值,完毕之后整个表达式的值是最后一个表达式的值。

main()

{int a,s,d;

s=2;

d=3;

a=12+(s+2,d+4);

}

先算括号内的值:s+2=4,d+4=7;括号内应为(4,7),括号内取值只取最后一个,如果没有括号则取第一个;a=12+7=19。

x=(y=3,(z = ++y+2) +5);

是首先把y赋值为3,把y递增为4,然后把4加上2,把结果6赋值给z,接下来把z加5最后把x赋为结果值11。

2、注意事项:逗号运算符(,)是C语言运算符中优先级最低的一种运算符。

二、其它用法:

1、在for里面的应用:

int i;int j;

for(i=0,j=0;i<5;i++,j++)

2、当分隔符:int i,j;

(6)逗号c语言作用扩展阅读

运算符优先级:

1、优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。

2、相同优先级中,按结合顺序计算。大多数运算是从左至右计算,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。

3、基本的优先级需要记住:指针最优,单目运算优于双目运算。如正负号。先算术运算,后移位运算,最后位运算。请特别注意:1 << 3 + 2 && 7等价于 (1 << (3 + 2))&&7.逻辑运算最后计算。

❼ C语言里的逗号的使用方法

C语言提供一种特殊放入运算符:逗号运算符

表达式1,表达式2

逗号表达式的求解过程是:

先求表达式1,再求表达式2

整个逗号表达式的值是表达式2的值,如表达式“3+5,6+8”的值为14。又如,逗号表达式“a=3*5,a*4”,赋值运算符的优先级别高于逗号运算符,因此应先求解a=3*5.经计算和赋值后得到a的值为15,然后求解a*4,得60,整个逗号表达式的值为60。

(7)逗号c语言作用扩展阅读:

逗号运算

例子:

int a1,a2,b=2,c=7,d=5; // 第1行

a1=(++b,c--,d+3); // 第2行

a2=++b,c--,d+3; //第3行

对于给a1赋值的代码,有三个表达式,用逗号分开,所以最终的值应该是最后一个表达式的值,也就是(d+3)的值,为8,所以a1的值为8。

❽ 在C语言中逗号、分号等的用法

首先说下分号吧,其实分号挺简单的,它就表示着一个语句的结束,
就像平时我们语文中说完一句话加上个句号,
C语言中说完一句话后面加上个分号;
比如
printf("hello,world\n");
说完一句话加上个分号告诉计算机你说完这句话了
再来说下逗号,
这就样提到逗号表达式了,
比如
a=(4,6)
这个表达式它的值就是6
,为什么呢?
先看括号里的(4,6)
因为有了逗号存在形成一个逗号表达式,整个表达式的值取的是
逗号后面的值,因此是6
然后把6赋值给a
最终整个表达式的值就是6了

在逗号表达式中我认为只要记住了
取值取逗号后边的那个值就可以了。
再拿个经典点的说下
while(i<10)
sum+=i;
这一小断程序
当然我初始化sum值为0;
对于它我们可以改写成更简单的
就用逗号实现:
while(sum+=i,i<10)

这样一句话就实现了,它的过程就是先做WHILE里面的
sum+=i
然后括号内的整体是一个逗号表达式,整个表达式的值取逗号后边的
i<10
这样前面的话也做了,最终也达到了我们的目的。
但注意此句话最后边忘了那个分号!
表示语句的结束。

❾ c语言中逗号指的是什么意思

C语言中的逗号有两种意思:

1、表示"分隔号"的意思,就和语文中的逗号一个意思;

2、表示"逗号运算符"的意思,用它将2个表达式连接起来.例如:

3+5,6+8:就称为逗号表达式,又称为"顺序求值运算符"。逗号表达式的一般形式为表达式1,表达式2。
逗号表达式的求解过程是:先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。例如:上面的表达式"3+5,6+8"的值是14。

(9)逗号c语言作用扩展阅读:

运算符号:

比特右移(>>)运算符可以是算术(左端补最高有效位)或是逻辑(左端补 0)位移。例如,将 11100011 右移 3 比特,算术右移后成为 11111100,逻辑右移则为 00011100。

因算术比特右移较适于处理带负号整数,所以几乎所有的编译器都是算术比特右移。

运算符的优先级从高到低大致是:单目运算符、算术运算符、关系运算符、逻辑运算符、条件运算符、赋值运算符(=)和逗号运算符。

数据类型:

C的数据类型包括:整型、字符型、实型或浮点型(单精度和双精度)、枚举类型、数组类型、结构体类型、共用体类型、指针类型和空类型。

常量与变量:

常量其值不可改变,符号常量名通常用大写。变量是以某标识符为名字,其值可以改变的量。

标识符是以字母或下划线开头的一串由字母、数字或下划线构成的序列,请注意第一个字符必须为字母或下划线,否则为不合法的变量名。变量在编译时为其分配相应存储单元。

数组:

如果一个变量名后面跟着一个有数字的中括号,这个声明就是数组声明。字符串也是一种数组。它们以ASCII的NULL作为数组的结束。要特别注意的是,方括内的索引值是从0算起的。

网络-C语言