쉬프트 JIS 코드를 EUC 코드로 변환한다


함수명
sjis2euc  쉬프트 JIS 코드를 EUC 코드로 변환한다
형식
unsigned int sjis2euc(unsigned int sjis);
인수
sjis  쉬프트 JIS 코드
함수치
EUC 코드
주의 사항

용례(sjis2euc-test.c )
sjis2euc(0x8abf);

프로그램(sjis2euc.c )
unsigned int sjis2euc(unsigned int sjis)
{
    unsigned int hib, lob;
    
    hib = (sjis >> 8) & 0xff;
    lob = sjis & 0xff;
    hib -= (hib <= 0x9f) ?  0x71 : 0xb1;
    hib = (hib << 1) + 1;
    if (lob >= 0x9e) {
        lob -= 0x7e;
        hib++;
    } else if (lob > 0x7f) lob -= 0x20;
    else lob -= 0x1f;

    hib |= 0x80;
    lob |= 0x80;

    return (hib << 8) | lob;
}
설명
쉬프트 JIS 코드는 Microsoft 한자 코드라고도 불려 현재의 곳 가장 넓게 사용되고 있는 8 비트계 한자 코드이며, PC 위의 표준 한자 코드이기도 하다.

한편, EUC 코드는 UNIX상에서 넓게 사용되고 있는 8 비트계 한자 코드 (이어)여, JIS 코드의 제1바이트, 제2바이트의 양쪽 모두에 0 x80를 가산했다 물건을 사용한다.

관련 함수
JIS 코드를 SJIS로 변환하는, JIS 코드를 EUC로 변환하는, SJIS 코드를 JIS로 변환하는, EUC 코드를 JIS로 변환하는, EUC 코드를 SJIS로 변환한다