티스토리 뷰

당연하게도 Swift에서는 C 문법들을 지원한다. 어미가 Objective-C니 어쩔 수 없겠지.. 하지만 헷갈리는 나 같은 사람들을 위해 typeAlias로 친절히 명시해주었다.

C - Swift

  • signed char → Int8 = CSignedChar

  • short → Int16 = CShort

  • int → Int32 = CInt

  • long → Int = CLong

  • long long → Int64 = CLongLong

자바는 친절하게도 C와 상당히 비슷한데

Java - Swift

  • short[] → [Float], [CShort]

  • short → CShort

  • int[] → [Int]

  • int[][] → [[Int]]

  • double → Float (Double도 있지만 해당 범위까지 사용하지 않으므로 다운스케일)

  • long → Int

자바에는 unsigned 타입이 없다. 따라서 byte는 항상 -128

127의 범위를 가지는데, 0

255의 범위가 필요할 때는 아래와 같이 사용할 수 있다.

byte a = xxx; int b = 0; 
if (a < 0)
    b = (int)a + 256;
else 
    b = (int)a;
byte a = xxx; 
int b = (int)a & 0xFF;

두 방식 모두 byte 타입 내에선 (당연히) 불가능하므로 int 타입으로 리턴된다.

'제2외국어' 카테고리의 다른 글

NSString 비교 메소드  (0) 2017.07.11
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday