C에서 ASCII 문자를 int로 변환하는 방법
C에서 ASCII 문자를 int로 변환하려면 어떻게 해야 합니까?
다음은?
int a_as_int = (int)'a';
아샷과 크완에 동의합니다만, 혹시 '7'과 같은 아스키 암호를 '7'과 같은 int로 변환하고 싶으신가요?
그럼 다음을 추천합니다.
char seven = '7';
int i = seven - '0';
아니면 경고를 받을 수도 있고,
int i = (int) (seven - '0');
댓글로 수정했습니다. 감사합니다.
검색 중인 항목:
int c = some_ascii_character;
또는 할당 없이 전환하는 경우:
(int)some_ascii_character;
ASCII를 정수에 사용atoi()
문자열을 받아 정수로 변환하는 함수:
#include <stdlib.h>
int num = atoi("23"); // 23
문자열에 10진수가 포함되어 있으면 숫자가 잘립니다.
int num = atoi("23.21"); // 23
C의 char 값은 암시적으로 int로 변환 가능합니다. 예를 들어,char c; ... printf("%d", c)
10진수 ASCII 값을 인쇄합니다.c
,그리고.int i = c;
ASCII 정수 값을 입력합니다.c
인에i
. 다음을 사용하여 명시적으로 변환할 수도 있습니다.(int)c
. ASCII 숫자를 int로 변환하는 방법과 같은 다른 것을 의미한다면, 그것은 다음과 같습니다.c - '0'
, 은연중에 변환되는c
int에 입력한 다음 ASCII 값을 풉니다.'0'
, 즉 48(C에서, 다음과 같은 문자 상수)'0'
역사적인 이유로 차(char)가 아닌 int 형식입니다.
ASCII 순서값 말씀하시는 건가요?다음과 같은 타입 캐스팅을 시도해 보십시오.
int x = 'a';
다른 사람들이 말했듯이 직접 변환할 수 있습니다."ASCII Extended 문자를 UTF-16 또는 UTF-32 값으로 변환하는 방법"과 같은 것을 의미하지 않는 한 말입니다.이것은 완전히 다른 질문입니다. (적어도 하나는 좋습니다.)그리고 제 기억이 맞다면 꽤 어려운 것이 있습니다. 만약 당신이 "순수한" C만 사용하고 있다면요.그러면 여기서 시작할 수 있습니다: https://stackoverflow.com/questions/114611/what-is-the-best-unicode-library-for-c/114643#114643
(ASCII Extended의 경우 나는 ASCII 집합에 대한 많은 "확장" 중 하나를 의미합니다.기본 ASCII 집합의 0-127자는 유니코드로 직접 변환할 수 있는 반면 128-255는 그렇지 않습니다.)예를 들어 ISO_8859-1 http://en.wikipedia.org/wiki/ISO_8859-1 은 7비트 ASCII 집합 또는 (유명한) 코드 페이지 437 및 850에 대한 8비트 확장입니다.
C99 표준 라이브러리에서는 문자 상수에서 해당 ASCII int 값으로 맵을 수동으로 작성하지 않는 한 불가능합니다.
좋아요 내 문자 상수'a'
ASCII임을 보장하지 않습니다.
C99는 숫자가 연속적인 것과 같은 상수에 대해서만 몇 가지를 보장합니다.
ASCII라는 단어는 바닥글 노트에 C99 N1256 표준 초안에만 표시되며, 바닥글 노트 173)에는 다음과 같이 적혀 있습니다.
7비트 US ASCII 문자 집합을 사용하는 구현에서 인쇄 문자는 0x20(공간) ~ 0x7E(틸드)의 값을 갖는 문자이고, 제어 문자는 0(NUL) ~ 0x1F(US)의 값을 갖는 문자이고, 0x7F(DEL)의 값을 갖는 문자입니다.
ASCII가 유일한 가능성이 아니라는 것을 암시합니다.
언급URL : https://stackoverflow.com/questions/5322056/how-to-convert-an-ascii-character-into-an-int-in-c
'it-source' 카테고리의 다른 글
NumPy Matrix 대 Array 클래스의 곱셈은 어떻게 다릅니까? (0) | 2023.11.07 |
---|---|
Drietrine QueryBuilder의 식 mysql NOW() (0) | 2023.11.07 |
MySQL 오류:UPDATE 및 LIMIT의 잘못된 사용 (0) | 2023.11.07 |
Magento에서 getChildHtml 이해 (0) | 2023.11.07 |
Powershell get-event 로그 메시지 열이 너무 짧습니다. (0) | 2023.11.07 |