편집 기록

편집 기록
  • 프로필 nowp님의 편집
    날짜2021.03.12

    'A' 바이트 개수 질문


    #define _CRT_SECURE_NO_WARNINGS  
    #include <stdio.h>
    
    
    int main()
    {
        int size;
    
    
        int num1 = 10;
        double num2 = 0X18;
        long double num3 = 17.1e-3;
        double num4 = 3.14;
        char num5 = 'A';
        double num6 = 3.14F;
    
    
    
        printf("literal의 저장 공간 크기\n(1) 10: %d Byte \n(2) 0X18: %d  Byte \n(3) 17.1e-3: %d  Byte \n(4) 3.14: %d  Byte \n(5) 'A': %d  Byte \n(6) 3.14F: %d  Byte \n", sizeof(10), sizeof(0X18), sizeof(17.1e-3), sizeof(3.14), sizeof('A'), sizeof(3.14F));
    
    
    
    
        return 0;
    }
    

    visual c++에서 sizeof(char)sizeof('A') 결과가 달라서 문자형 상수 ‘A'는 int형이라 크기가 4바이트로 출력 되어야 하는거 아닌가요? 위 비주얼 스튜디오 2019에서 코드대로 출력하면 'A'가 1바이트로 출력 되는데 어디가 문제인가요?

  • 프로필 알 수 없는 사용자님의 편집
    날짜2021.03.12

    'A' 바이트 개수 질문


    define _CRT_SECURE_NO_WARNINGS

    include

    int main() { int size;

    int num1 = 10;
    double num2 = 0X18;
    long double num3 = 17.1e-3;
    double num4 = 3.14;
    char num5 = 'A';
    double num6 = 3.14F;
    
    
    
    printf("literal의 저장 공간 크기\n(1) 10: %d Byte \n(2) 0X18: %d  Byte \n(3) 17.1e-3: %d  Byte \n(4) 3.14: %d  Byte \n(5) 'A': %d  Byte \n(6) 3.14F: %d  Byte \n", sizeof(10), sizeof(0X18), sizeof(17.1e-3), sizeof(3.14), sizeof('A'), sizeof(3.14F));
    
    
    
    
    return 0;
    

    }

    visual c++에서 sizeof(char) 와 sizeof('A') 결과가 달라서 문자형 상수 ‘A'는 int형이라 크기가 4바이트로 출력 되어야 하는거 아닌가요? 위 비주얼 스튜디오 2019에서 코드대로 출력하면 'A'가 1바이트로 출력 되는데 어디가 문제인가요?