형식 캐스트 변환
형식을 명시적으로 변환 하려면 형식 캐스트를 사용할 수 있습니다.
구문
캐스트 식:
단항 식( type-name ) cast-expression
형식-이름:
지정자 한정자 목록 요약 자가 선택
형식 이름 형식입니다 및 cast 식 해당 형식으로 변환 하는 값입니다.식 형식 캐스팅에는 l-value가 아닙니다.Cast 식 형식의 변수에 할당 된 있었습니다 것 처럼 변환 됩니다 형식 이름.할당에 대 한 변환 규칙 (설명 할당 변환) 캐스트도 입력을 적용 합니다.다음 표에서 특정된 형식에 캐스팅 될 수 있는 종류를 보여 줍니다.
법적 형식 캐스트
대상 형식 |
잠재적 공급처 |
---|---|
정수 계열 형식 표 |
모든 정수 형식은 부동 소수점 형식 또는 개체에 대 한 포인터 |
부동 소수점 |
모든 산술 형식 |
개체에 대 한 포인터 또는 (void *) |
임의의 정수 형식 (void *)에 개체에 대 한 포인터 또는 함수 포인터 |
함수 포인터 |
다른 정수 계열 형식, 개체에 대 한 포인터 또는 함수 포인터 |
구조체, 공용 구조체 또는 배열 |
없음 |
Void 형식 |
모든 형식 |
모든 식별자에 캐스팅 될 수 있습니다 void 형식입니다.그러나 형식이 지정 된 경우 형식 캐스트 식을 하지 않습니다 void, 되는 식별자에 형식이 될 수 없습니다 캐스팅 한 다음에 void 식.어떤 식으로 캐스팅 될 수 있습니다 void, 하지만 형식의 식 void 다른 형식으로 캐스팅할 수 없습니다.예를 들어, 함수를 void 반환 형식을 다른 형식으로 캐스트 돌아가는 가질 수 없습니다.
참고는 void * 식에 있는 형식 포인터를 void를 입력 하지 void.개체에 캐스팅 되는 경우 void 형식의 결과 식을 할당할 없습니다 항목을 합니다.형식 캐스팅 개체에 없음 할당을 내릴 수 있도록 마찬가지로 형식 캐스팅 개체 수용 가능한 i-값을 아닙니다.
Microsoft 전용
식별자의 크기는 변경 되지 않습니다으로 l-value 식 형식 캐스팅 될 수 있습니다.L-value 식에 대 한 자세한 내용은 L 값 및 R-Value 식.
Microsoft 특정 끝
식 형식으로 변환할 수 있습니다 void 는 캐스트에만 위치 값은 필요 하지 않습니다 결과 식을 사용할 수 있습니다.개체 포인터 변환 void * 와 원래 형식으로 다시 원래 값으로 반환 됩니다.