char가 숫자인지 문자인지를 확인합니다.
어떻게 하면,char
예를 들어 C로a
또는9
숫자야 문자야?
다음 중 어느 쪽을 사용하는 것이 좋습니까?
int a = Asc(theChar);
아니면 이거?
int a = (int)theChar
사용하실 수 있습니다.isalpha()
그리고.isdigit()
표준 기능<ctype.h>
.
char c = 'a'; // or whatever
if (isalpha(c)) {
puts("it's a letter");
} else if (isdigit(c)) {
puts("it's a digit");
} else {
puts("something else?");
}
문자는 정수이기 때문에 실제로 문자와 리터럴을 직접 비교할 수 있습니다.
if( c >= '0' && c <= '9' ){
이것은 모든 문자에 적용됩니다.ASCII 표를 참조해 주세요.
ctype.h 에는, 이것을 실현하기 위한 기능도 준비되어 있습니다.
일반적으로 간단한 조건을 사용하여 ASCII 문자 또는 숫자를 확인할 수 있습니다.
if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z'))
{
/*This is an alphabet*/
}
사용할 수 있는 숫자의 경우
if (ch >= '0' && ch <= '9')
{
/*It is a digit*/
}
다만, C 의 문자는 내부적으로 ASCII 값으로 취급되기 때문에, ASCII 값을 사용해 같은 것을 확인할 수도 있습니다.
이것들 중 어느 것도 도움이 되지 않는다.사용하다isalpha()
또는isdigit()
참조할 수 있습니다.들어갔어요<ctype.h>
.
<ctype.h>
에는, 의 유무를 판단하기 위한 일련의 기능이 포함되어 있습니다.char
다음과 같은 문자 또는 숫자를 나타냅니다.isalpha
,isdigit
그리고.isalnum
.
이유int a = (int)theChar
하고 싶은 대로 하지 않는 것은a
는 특정 문자를 나타내는 정수 값을 유지합니다.예를 들어, 의 ASCII 번호입니다.'9'
57, 그리고'a'
97입니다.
ASC용도II:
- 숫자 -
if (theChar >= '0' && theChar <= '9')
- 알파벳 -
if (theChar >= 'A' && theChar <= 'Z' || theChar >= 'a' && theChar <= 'z')
ASCII 표를 직접 확인해 보십시오.
의 C99 표준c >= '0' && c <= '9'
c >= '0' && c <= '9'
(다른 답변에서 언급)는 C99 N1256 표준 초안 5.2.1 "문자 집합"에 다음과 같이 기재되어 있기 때문에 기능합니다.
소스 문자 집합과 실행 기본 문자 집합 모두에서 위의 십진수 목록에서 0 뒤의 각 문자 값은 앞의 값보다 1 더 커야 합니다.
단, ASCII는 보증되지 않습니다.
한다면(theChar >= '0' && theChar <='9')
숫자입니다.무슨 말인지 아시겠죠?
언급URL : https://stackoverflow.com/questions/8611815/determine-if-char-is-a-num-or-letter
'programing' 카테고리의 다른 글
목록 이해 대 람다 + 필터 (0) | 2022.12.31 |
---|---|
Jest를 사용하여 NUXT.js 및 Vue.js 앱을 테스트합니다.'mapState()에서 [vuex] 모듈 네임스페이스를 찾을 수 없음' 및 '[vuex] 알 수 없는 작업 유형'을 가져오는 중 (0) | 2022.12.31 |
판다 집계 결과에서 과학적 표기법 서식/억제 (0) | 2022.12.31 |
python setup.py 언인스톨 (0) | 2022.12.31 |
__FILE__ 매크로가 전체 경로를 표시합니다. (0) | 2022.12.31 |