stdin이 사용하는 문자 인코딩에 관계없이 표준 입력의 각 문자의 UTF-8로 인코딩 된 16 진수 값을 표시하는 ANSI C 프로그램을 작성해야합니다. 예를 들어,stdin의 UTF-8 인코딩 값을 얻는 방법은 무엇입니까?
AÀĀ
는
41
C0
0100
은 UTF-8 문자 인코딩을 변환한다 C의 함수 있는가 수득?
stdin이 사용하는 문자 인코딩에 관계없이 표준 입력의 각 문자의 UTF-8로 인코딩 된 16 진수 값을 표시하는 ANSI C 프로그램을 작성해야합니다. 예를 들어,stdin의 UTF-8 인코딩 값을 얻는 방법은 무엇입니까?
AÀĀ
는
41
C0
0100
은 UTF-8 문자 인코딩을 변환한다 C의 함수 있는가 수득?
당신은 UTF-8을 끌 수 없습니다. 당신은 표준 입력의 인코딩을 알고 있다면, 당신은 UTF-8로 변환 iconv
또는 ICU4C을 사용하여, 다음의 진수를 덤프 할 수 보통의 종류의 길. 어떤 경우에는 당신은 표준 입력은 LANG 환경 변수에 지정된 로케일에 맞는 가정 할 수 있지만, 아무것도 실행에서 누군가를 중지하지 :
yourprogram < SomeFileFullOfISO-2022-JP
자, 자격을 갖춘 추측을 할 수 있습니다. UTF-8을 제외하고는 UTF-8처럼 유효성을 검사하지 않습니다. –
그 값이 그 세 문자의 UTF-8 값이 아니다. UTF-8은 문자 표현의 일부로 '01'또는 '00'을 사용하지 않습니다. – bmargulies
예제로 판단하면 UTF-8 16 진수 값 (41 c380 c480)이 아닌 유니 코드 코드 포인트를 인쇄하려고합니다. – ugoren