반응형

C 언어, 현재 사용 중인 한글 코드를 검사하기

 

글.  오상문 sualchi@daum.net

 

개발환경에서 어떤 한글 코드를 사용하는지 확인하는 C 프로그램입니다.

 

아래 코드에서 "가" 부분이 제대로 보이도록 입력하고 컴파일해서 실행합니다.

char gah[] = "";  

 

C 언어 소스 코드는 다음과 같습니다.

 

/*
   Checking the Korean code Program 
   (현재 사용 중인 한글 코드를 검사하는 프로그램)  
   Windows 10 pro, DevCpp 5.11, C program

   2018.07.14  by Sangmun Oh   sualchi@daum.net
*/
#include <stdio.h>

 

#define UNICODE_LE_GA "\x00\xAC"
#define UNICODE_BE_GA "\xAC\x00"
#define UTF8_GA "\xEA\xB0\x80"
#define ANSI_GA "\xB0\xA1"

 

int main( )
{
  char gah[] = "가";  // String value is Hangul 'Ga' 

                            // Change it to look like a Hangul 'Ga' 
  unsigned short code;
 
  code = (unsigned short)gah[0]&0xFF;
  code <<= 8;
  code += (unsigned short)gah[1]&0xFF;
 
// printf("가: 0x%X, 0x%X\n",
//    (unsigned int)gah[0]&0xFF, (unsigned int)gah[1]&0xFF); 
// printf("가: 0x%X\n", code);
 
  printf("사용 중인 한글 코드: ");
 
  if(code == 0xB0A1)
    printf("CP949 (or MS949, ANSI, EUC_KR, KS5601)\n");
  else if(code == 0xEAB0) 
    printf("utf-8 (Unicode)\n");
  else if(code == 0xAC00) 
    printf("utf-16 (Unicode-LittleEndian)\n");
  else if(code == 0x00AC) 
    printf("utf-16 (Unicode-BigEndian)\n"); 
  else if(code == 0x1100) 
    printf("utf-32 (Unicode)\n");
  else
    printf("Unknown type\n");
 
  return 0;
}

 

[결과 화면] 제가 사용 중인 DevCpp 환경에서 CP949 코드를 사용하고 있네요.

 

 

 

반응형

+ Recent posts