값 타입캐스트
값 타입캐스트 (Value typecasts)
때로는 식이나 식의 일부의 타입을 바꿔서 대입 호환이 되게 해야 할 때가 있어요. 이때 값 타입캐스트(value typecast)를 사용해요.
본문
값 타입캐스트는 변수 타입캐스트와 달리 대입의 왼쪽에는 쓸 수 없어요. 다음은 유효한 타입캐스트 몇 가지예요.
Byte('A')
Char(48)
boolean(1)
longint(@Buffer)
일반적으로 식의 타입 크기와 타입캐스트 대상 타입의 크기는 같아야 해요. 다만 서수 타입(byte, char, word, boolean, enumeration)에서는 그렇지 않아요. 이들은 서로 바꿔 쓸 수 있어요. 즉, 크기가 맞지 않아도 다음은 동작해요.
Integer('A');
Char(4875);
boolean(100);
Word(@Buffer);
이 동작은 Delphi나 Turbo Pascal과 호환돼요.
더 알아보기
- 변수에 대한 타입캐스트는 변수 타입캐스트 섹션에서 다뤄요.
- 메모리 정렬과 관련된 특수한 타입캐스트는 비정렬 타입캐스트 섹션에서 확인할 수 있어요.