C/C언어 이론

(3-8)Operator

T_Y 2018. 10. 2. 14:46
반응형
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <stdio.h>
 
void main()
{
    /*
        형변환  -> 자료형의 변환
            자동 형변환
                정수 -> 실수 : 없던 소수점 생김 (오차가 발생할 수 있다)
                실수 -> 정수 : 소수점 이하 값은 소멸 (정수만 남는다)
                큰 타입 정수 -> 작은 타입 정수
            명시적 형변환 (casting)
                (type) 을 값 앞에 명시하여 변환
                (int)3.14 ===> 3
    */
    double    dNum = 123;        // int -> double 자동형변환
    int        iNum = 129.123;    // double -> int 자동형변환
    char    cNum = iNum;    // int -> char
 
    printf("dNum = %f\n", dNum);
    printf("iNum = %d\n", iNum);
    printf("cNum = %d\n", cNum);
 
    // 다른 자료형끼리 연산을 할 경우, 크기가 큰 자료형으로 변환된다.
    printf("5 + 3.14 = %f\n", (5+3.14)); // int(4) + double(8) = double
 
    printf("5 + 3.14 = %d\n", (5+(int)3.14)); // 5 + 3
    printf("5 + 3.14 = %d\n", (int)(5+3.14)); // (int)8.14 -> 8
    printf("5 + 3.14 = %d\n", (int)5+3.14); // (int)5 -> 5 + 3.14 = 8.14
    // 소괄호의 위치는 정말 중요...
}
cs



반응형

'C > C언어 이론' 카테고리의 다른 글

(4-1)Conditional  (0) 2018.10.02
(3-input)Operator  (0) 2018.10.02
(3-7)Operator  (0) 2018.10.02
(3-6)Operator  (0) 2018.10.02
(3-5)Operator  (0) 2018.10.02