다음을 통해 공유


쉼표 연산자:,

그룹화 하나만 있어야 하는 두 개의 문이 있습니다.

expression , expression

설명

쉼표 연산자는 왼쪽에서 오른쪽으로 결합됩니다.쉼표로 구분 하 여 두 식 왼쪽에서 오른쪽으로 계산 됩니다.왼쪽된 피연산자는 항상 계산 되 고 오른쪽 피연산자를 계산 하기 전에 모든 파생 작업이 완료 됩니다.

쉼표 구분 기호 함수 인수 목록과 같은 일부 상황에서 사용할 수 있습니다.사용 하는 운영자를 쉼표를 구분 기호로 사용을 혼동 하지 마십시오. 사용 하는 두 가지는 완전히 다릅니다.

다음 식을 참조합니다

e1 , e2

형식 및 값 형식 및 식의 값입니다 e 2. 결과 e1 삭제 됩니다.오른쪽 피연산자는 l-value 인 경우 결과 l-값입니다.

쉼표는 구분 (예: 실제 인수가 함수 또는 집계 이니셜라이저)에서 일반적으로 사용 되는 경우 쉼표 연산자와 피연산자 괄호로 묶어야 합니다.예를 들면 다음과 같습니다.

func_one( x, y + 2, z );
func_two( (x--, y + 2), z );

함수를 호출 합니다 func_one , 위 세 개의 인수를 쉼표로 구분 하 여 전달 됩니다: x, y + 2, 및 z.함수를 호출 하려면 func_two, 괄호 안에 첫 번째 쉼표 다음 순차 계산 연산자로 해석 하도록 컴파일러 강제로.이 함수 호출이 두 개의 인수를 전달 func_two.순차 평가 작업의 결과 첫 번째 인수는 (x--, y + 2), 식의 종류와 값이 y + 2. 두 번째 인수는 z.

예제

// cpp_comma_operator.cpp
#include <stdio.h>
int main () {
   int i = 10, b = 20, c= 30;
   i = b, c;
   printf("%i\n", i);

   i = (b, c);
   printf("%i\n", i);
}
  

참고 항목

참조

이항 연산자 식

C + + 연산자

연산자 우선 순위 및 결합성

개념

평가 순차 연산자