보수 연산자: ~
구문
~ cast-expression
설명
비트 보수 연산자라고도 하는 보수 연산자(~
)는 피연산자의 비트 보수를 생성합니다. 즉, 피연산자의 1인 모든 비트는 결과적으로 0입니다. 반대로 피연산자의 0인 모든 비트는 결과적으로 1입니다. 1의 보수 연산자의 피연산자는 정수 계열 형식이어야 합니다.
~에 대한 연산자 키워드
C++에서는 ~
에 대한 대체 맞춤법으로 compl
을 지정합니다. C에서는 대체 맞춤법이 <iso646.h> 헤더에 매크로로 제공됩니다. C++에서 대체 맞춤법은 키워드입니다. <iso646.h> 또는 C++에 해당하는 <ciso646>은 더 이상 사용되지 않습니다. Microsoft C++에서는 대체 맞춤법을 사용하도록 설정하려면 /permissive-
또는 /Za
컴파일러 옵션이 필요합니다.
예시
// expre_One_Complement_Operator.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;
int main () {
unsigned short y = 0xFFFF;
cout << hex << y << endl;
y = ~y; // Take one's complement
cout << hex << y << endl;
}
이 예제에서 y
에 할당된 새 값은 부호 없는 값인 0xFFFF의 1의 보수이거나 0x0000입니다.
정수 계열 확장은 정수 계열 피연산자를 대상으로 수행됩니다. 피연산자가 승격되는 형식은 결과 형식입니다. 정수 계열 승격에 대한 자세한 내용은 표준 변환을 참조하세요.
참고 항목
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기