형식 변환 (C)Type Conversions (C)

형식 변환은 지정된 연산자와 피연산자 및 연산자의 형식에 따라 달라집니다.Type conversions depend on the specified operator and the type of the operand or operators. 다음과 같은 경우에 형식 변환이 수행됩니다.Type conversions are performed in the following cases:

  • 한 형식의 값이 다른 형식의 변수에 할당되거나, 연산자가 연산을 수행하기 전에 피연산자의 형식을 변환하는 경우When a value of one type is assigned to a variable of a different type or an operator converts the type of its operand or operands before performing an operation

  • 한 형식의 값이 다른 형식으로 명시적으로 캐스팅되는 경우When a value of one type is explicitly cast to a different type

  • 값이 인수로 함수에 전달되거나, 형식이 함수에서 반환되는 경우When a value is passed as an argument to a function or when a type is returned from a function

    문자, short 정수, 부호가 있거나 없는 모든 정수 비트 필드 또는 열거형 형식의 개체는 정수를 사용할 수 있는 모든 식에서 사용될 수 있습니다.A character, a short integer, or an integer bit field, all either signed or not, or an object of enumeration type, can be used in an expression wherever an integer can be used. int가 원래 형식의 모든 값을 나타낼 수 있으면 해당 값이 int로 변환되고, 그렇지 않으면 unsigned int로 변환됩니다.If an int can represent all the values of the original type, then the value is converted to int; otherwise, it is converted to unsigned int. 이 프로세스를 "정수 계열 확장"이라고 합니다.This process is called "integral promotion." 정수 계열 확장은 값을 유지합니다.Integral promotions preserve value. 즉, 확장 후의 값과 확장 전의 값이 동일한 것으로 보장됩니다.That is, the value after promotion is guaranteed to be the same as before the promotion. 자세한 내용은 일반적인 산술 변환을 참조하세요.See Usual Arithmetic Conversions for more information.

참고 항목See Also

식 및 할당Expressions and Assignments