Comma Operator in C

By | February 18, 2023

Prerequisite – Operators in C
The comma operator in C is an operator that allows multiple expressions to be evaluated sequentially in a single statement.

Syntax:
The syntax of the comma operator is as follows:

expr1, expr2, ..., exprn;

Here, expr1, expr2, …, and exprn are expressions that are evaluated in order from left to right. The value of the entire expression is the value of the last expression exprn.

Example:
Here’s an example code that demonstrates the use of the comma operator in C:

#include <stdio.h>

int main() {
    int a = 1, b = 2, c = 3;
    
    // Assign b to a, then assign c to b, and print the value of c
    printf("%d\n", (a = b, b = c, c));
    
    return 0;
}

In this example, we declare three integer variables a, b, and c, with the values 1, 2, and 3, respectively. We then use the comma operator to assign b to a, then assign c to b, and print the value of c.

The expression (a = b, b = c, c) is evaluated from left to right. First, the value of b (2) is assigned to a, then the value of c (3) is assigned to b. Finally, the value of c (3) is returned as the value of the entire expression, which is printed to the console.

The output of this program will be:

3

As you can see, the value of c is printed to the console, which is the value returned by the comma operator.

Please write comments below if you find anything incorrect, or you want to share more information about the topic discussed above. A gentle request to share this topic on your social media profile.

Author: Mithlesh Upadhyay

Mithlesh Upadhyay is a Computer Science and AI expert from Madhya Pradesh with strong academic background (BE in CSE and M.Tech in AI) and over six years of experience in technical content development. He has contributed tech articles, led teams, and worked in Full Stack Development and Data Science. He founded the w3colleges.org portal for learning resources.