euc2sjis EUC 코드를 쉬프트 JIS 코드로 변환한다
unsigned int euc2sjis(unsigned int euc);
euc EUC 코드
쉬프트 JIS 코드
unsigned int euc2sjis(unsigned int euc)
{
unsigned int jis;
unsigned int hib, lob;
if ((euc & 0xff00) == 0x8e00)
jis = hankaku2zen(euc & 0xff);
else jis = euc & ~0x8080;
hib = (jis >> 8) & 0xff;
lob = jis & 0xff;
lob += (hib & 1) ? 0x1f : 0x7d;
if (lob >= 0x7f) lob++;
hib = ((hib - 0x21) >> 1) + 0x81;
if (hib > 0x9f) hib += 0x40;
return (hib << 8) | lob;
}
한편, 쉬프트 JIS 코드는 Microsoft 한자 코드라고도 불려 현재의 곳 가장 넓게 사용되고 있는 8 비트계 한자 코드이며, PC 위의 표준 한자 코드이기도 하다.