단항 산술 연산자Unary Arithmetic Operators

C 단항 더하기, 산술 부정, 보수 및 논리 부정 연산자는 다음 목록에서 설명합니다.The C unary plus, arithmetic-negation, complement, and logical-negation operators are discussed in the following list:

연산자Operator 설명Description
+ 괄호 안의 식 앞에 오는 단항 더하기 연산자는 괄호 안의 연산자를 그룹화합니다.The unary plus operator preceding an expression in parentheses forces the grouping of the enclosed operations. 이러한 연산자는 두 개 이상의 결합형 또는 가환적 이항 연산자와 관련된 식과 함께 사용됩니다.It is used with expressions involving more than one associative or commutative binary operator. 피연산자는 산술 형식이어야 합니다.The operand must have arithmetic type. 결과는 피연산자의 값입니다.The result is the value of the operand. 정수 계열 피연산자는 정수 계열 확장을 거칩니다.An integral operand undergoes integral promotion. 결과 형식은 확장된 피연산자 형식과 동일합니다.The type of the result is the type of the promoted operand.
- 산술 부정 연산자에서는 피연산자의 부정(2의 보수)을 만듭니다.The arithmetic-negation operator produces the negative (two's complement) of its operand. 피연산자는 정수 계열 또는 부동 소수점 값이어야 합니다.The operand must be an integral or floating value. 이 연산자는 일반적인 산술 변환을 수행합니다.This operator performs the usual arithmetic conversions.
~ 비트 보수(또는 비트 NOT) 연산자는 피연산자의 비트 보수를 만듭니다.The bitwise-complement (or bitwise-NOT) operator produces the bitwise complement of its operand. 피연산자는 정수 계열 형식이어야 합니다.The operand must be of integral type. 이 연산자는 일반적인 산술 변환을 수행하며 결과는 변환 후 피연산자의 형식입니다.This operator performs usual arithmetic conversions; the result has the type of the operand after conversion.
!! 논리 부정(논리 NOT) 연산자는 해당 피연산자가 true(0이 아닌 값)이면 값 0을 생성하고, false(0)이면 값 1을 생성합니다.The logical-negation (logical-NOT) operator produces the value 0 if its operand is true (nonzero) and the value 1 if its operand is false (0). 결과는 int 형식입니다.The result has int type. 피연산자는 정수 계열, 부동 소수점 또는 포인터 값이어야 합니다.The operand must be an integral, floating, or pointer value.

포인터에 대한 단항 산술 연산은 수행할 수 없습니다.Unary arithmetic operations on pointers are illegal.

예제Examples

다음 예제에서는 단항 산술 연산자를 보여 줍니다.The following examples illustrate the unary arithmetic operators:

short x = 987;  
    x = -x;  

위의 예제에서 x의 새 값은 987의 음수 또는 –987입니다.In the example above, the new value of x is the negative of 987, or -987.

unsigned short y = 0xAAAA;  
    y = ~y;  

이 예제에서 y에 할당된 새 값은 부호 없는 값인 0xAAAA의 1의 보수이거나 0x5555입니다.In this example, the new value assigned to y is the one's complement of the unsigned value 0xAAAA, or 0x5555.

if( !(x < y) )  

xy보다 크거나 같으면 식의 결과는 1(true)입니다.If x is greater than or equal to y, the result of the expression is 1 (true). xy보다 작으면 결과는 0(false)입니다.If x is less than y, the result is 0 (false).

참고 항목See Also

단항 연산자가 있는 식Expressions with Unary Operators