다음: 수치 객체 서술, 이전: 논리 값, 상위 문서: 수치 자료형   [차례][찾아보기]


4.7 서로 다른 크기인 자료형간 연산

많은 연산자와 함수는 서로 다른 자료형 간 연산이 가능합니다. 예를 들어,

uint8 (1) + 1
    ⇒ 2

위 연산자는 8두값 정수와 배정도 값 사이에서 작동하여 8두값 정수 값을 반환합니다. 합리적이라고 볼 수도 있는 배정도로 자료형이 커지지 않고, 8두값으로 작아졌다는 점을 유의하십시오. 그 이유는 만약 위 표현식의 자료형이 커진다면, 모든 수치 상수가 아래와 같은 적절한 자료형으로의 명시적인 형 변환이 필요해져

uint8 (1) + uint8 (1)
    ⇒ 2

사용자의 일정한 적용과 안내 받은 벌레를 찾기가 어려워지기 때문입니다. 아래는 같은 방식이 적용된 혼성 연산 예시로

single (1) + 1
    ⇒ 2

단정도 값을 반환합니다. 유효한 혼성 연산과 반환되는 자료형은 다음과 같습니다.

혼성 연산 결과
배정도 대 단정도 단정도
배정도 대 정수 정수
배정도 대 문자 배정도
배정도 대 논리값 배정도
단정도 대 정수 정수
단정도 대 문자 단정도
단정도 대 논리값 단정도

같은 방식이 혼성 매개변수가 지정된 함수에도 적용되어

min (single (1), 0)
   ⇒ 0

단정도 값이 반환됩니다.

서로 다른 자료형 간 색인 지정의 경우에는 자료형이 변하지 않습니다. 예를 들어,

x = ones (2, 2);
x(1, 1) = single (2)
   ⇒ x = 2   1
          1   1

에서 x는 배정도 자료형으로 유지됩니다.


다음: 수치 객체 서술, 이전: 논리 값, 상위 문서: 수치 자료형   [차례][찾아보기]