Make Unreal REAL.
article thumbnail
Published 2023. 3. 20. 20:32
콤마(,) 연산자 C++/기타

 

두 개의 표현식을 콤마(,)를 통해 하나로 묶어주는 역할을 한다.

  • 왼쪽 표현식부터 평가된다.

 

변수를 선언할 때 사용하는 구분자 콤마와는 다른 의미이다.

 

#include <iostream>

using namespace std;

void main()
{
    int i;
    int j = (i = 2, i += 3);
    
    cout << "i: " << i << ", j: " << j << endl << endl;
    
    // 변수 선언은 구분자이고
    // 증감은 콤마 연산자이다.
    for (int a = 0, b = 10; a < b; ++a, --b)
        cout << "a: " << a << ", b: " << b << endl;
}

 

출력

i: 5, j: 5

a: 0, b: 10
a: 1, b: 9
a: 2, b: 8
a: 3, b: 7
a: 4, b: 6

 

하지만, for문의 증감이나 if의 실행 내용을 1줄로 줄이는 용도 이외에는 사용하지 않는 것이 좋다.

 

아래처럼 작성하면 이게 함수에 인자를 넘기는 건지도 헷갈리고 결괏값을 단번에 파악하기가 어렵기 때문이다.

 

int j = (i = 2, i += 3);

'C++ > 기타' 카테고리의 다른 글

정수 표기법(Literal)  (0) 2023.04.19
동적 할당 시 0으로 초기화  (1) 2023.03.20
람다 식에서 [this] 캡처  (0) 2023.03.15
클래스 전방 선언(Forward declaration)  (0) 2023.03.07
override 키워드  (0) 2023.03.01
profile

Make Unreal REAL.

@diesuki4

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

검색 태그