C 복합 할당
복합 할당 연산자는 단순 할당 연산자에 다른 이항 연산자를 결합한 것입니다. 복합 할당 연산자는 추가 연산자로 지정된 연산을 수행한 다음 결과를 왼쪽 피연산자에 할당합니다. 예를 들어 다음과 같은 복합 할당 식은
expression1+=expression2
다음과 같이 해석될 수 있습니다.
expression1=expression1+expression2
하지만 복합 대입 식은 expression1을 한 번만 계산하지만, 확장된 버전은 expression1을 두 번(더하기 연산과 대입 연산에서 한 번씩) 계산하기 때문에 복합 대입 식은 확장된 버전과 동일하지 않습니다.
복합 할당 연산자의 피연산자는 정수 계열 또는 부동 형식이어야 합니다. 각 복합 할당 연산자는 해당하는 이항 연산자가 수행하는 변환을 수행하고 그에 따라 피연산자의 형식을 제한합니다. 더하기 대입(+=
) 및 빼기 대입( -= ) 연산자에도 포인터 형식의 왼쪽 피연산자가 있을 수 있으며, 이 경우 오른쪽 피연산자가 정수 형식이어야 합니다. 복합 할당 연산의 결과는 왼쪽 피연산자의 값과 형식입니다.
#define MASK 0xff00
n &= MASK;
이 예제에서 n
및 MASK
에 대해 비트 포함 AND 연산이 수행되고 결과가 n
에 할당됩니다. MASK
매니페스트 상수는 #define 전처리기 지시문을 사용하여 정의됩니다.
참조
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기