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

 

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

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

 

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

 

<cpp />
#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; }

 

출력

<cpp />
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줄로 줄이는 용도 이외에는 사용하지 않는 것이 좋다.

 

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

 

<cpp />
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

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

검색 태그