C语言:逗号表达式

简介: 从左向右依次计算,逗号表达式结果为最后一个表达式的结果

一、逗号表达式的运算法则


从左向右依次计算,逗号表达式结果为最后一个表达式的结果


代码如下:

int main()
{
    int a = 1;
    int b = 2;
    int c = 3;
    int d = 4;
    int e = (a = b + c, b = c + d, c = d);
    printf("%d %d %d %d %d", a, b, c, d, e);//5 7 4 4 4
    return 0;
}

二、逗号表达式的非常规用法


举例:将while循环中的判断语句和执行语句合并为的逗号表达式

//原始代码
int main()
{
    int i = 0;
    int a = 0;
    while (i < 5)
    {
        a = a + 1;
        i++;
    }
    printf("%d", a);
    return 0;
}
//改用逗号表达式
int main()
{
    int i = 0;
    int a = 0;
    while (a = a + 1, i++, i < 5)
    {
    }
    printf("%d", a);
    return 0;
}

两个代码运行结果相同,都是5

目录
相关文章
|
C语言 CDN
C语言逗号表达式
C语言逗号表达式
352 0
|
C语言
C语言程序设计——逗号表达式
C语言程序设计——逗号表达式
|
编译器 C语言
【C语言初阶】带你轻松玩转所有常用操作符(3)——关系操作符,逻辑操作符,条件操作符,逗号表达式
【C语言初阶】带你轻松玩转所有常用操作符(3)——关系操作符,逻辑操作符,条件操作符,逗号表达式
243 0
【C语言初阶】带你轻松玩转所有常用操作符(3)——关系操作符,逻辑操作符,条件操作符,逗号表达式
|
C语言
C语言编程语法—三目运算符和逗号表达式的使用
三目运算符,又称条件运算符,它是唯一有3个操作数的运算符,有时又称为三元运算符。三目运算符的结合性是右结合的;逗号表达式,是c语言中的逗号运算符,优先级别最低,它将两个及其以上的式子联接起来,从左往右逐个计算表达式,整个表达式的值为最后一个表达式的值。
964 0
|
C语言 索引
C语言——操作符(下)逗号表达式、下标引用、函数调用、和结构成员、表达式求值
C语言——操作符(下)逗号表达式、下标引用、函数调用、和结构成员、表达式求值
|
存储 编译器 C语言
初阶C语言 第四章-------《操作符》 (逻辑操作符,算术操作符,逗号表达式,三目操作符)知识点+基本练习题+深入细节+通俗易懂+完整思维导图+建议收藏
初阶C语言 第四章-------《操作符》 (逻辑操作符,算术操作符,逗号表达式,三目操作符)知识点+基本练习题+深入细节+通俗易懂+完整思维导图+建议收藏
|
C语言
c语言中逗号运算符和逗号表达式
原文:c语言中逗号运算符和逗号表达式  C语言提供一种特殊的运算符——逗号运算符。用它将两个表达式连接起来。如:  3+5,6+8称为逗号表达式,又称为“顺序求值运算符”。逗号表达式的一般形式为         表达式1,表达式2逗号表达式的求解过程是:先求解表达式1,再求解表达式2。
1343 0
|
1月前
|
存储 C语言
`scanf`是C语言中用于按格式读取标准输入的函数
`scanf`是C语言中用于按格式读取标准输入的函数,通过格式字符串解析输入并存入指定变量。需注意输入格式严格匹配,并建议检查返回值以确保读取成功,提升程序健壮性。
756 0
|
3月前
|
安全 C语言
C语言中的字符、字符串及内存操作函数详细讲解
通过这些函数的正确使用,可以有效管理字符串和内存操作,它们是C语言编程中不可或缺的工具。
261 15
|
9月前
|
存储 算法 C语言
【C语言程序设计——函数】素数判定(头歌实践教学平台习题)【合集】
本内容介绍了编写一个判断素数的子函数的任务,涵盖循环控制与跳转语句、算术运算符(%)、以及素数的概念。任务要求在主函数中输入整数并输出是否为素数的信息。相关知识包括 `for` 和 `while` 循环、`break` 和 `continue` 语句、取余运算符 `%` 的使用及素数定义、分布规律和应用场景。编程要求根据提示补充代码,测试说明提供了输入输出示例,最后给出通关代码和测试结果。 任务核心:编写判断素数的子函数并在主函数中调用,涉及循环结构和条件判断。
419 23