반응형
안녕하세요.
오늘은 C언어에서 문자가 알파벳이거나 숫자인지 확인하는 함수에 대해 알아보로독 하겠습니다.
문자가 특수문자가 아닌 알파벳('a'~'z', 'A'~'Z')과 숫자('0'~'9')인지를 확인할 때 사용할 수 있습니다.
함수 원형
int isalnum( int _C );
_C가 알파벳이거나 숫자인지를 판별하게 됩니다.
헤더파일
ctype.h
리턴값
알파벳이거나 숫자이면 0이 아닌 값을 리턴합니다.(알파벳 대문자 : 1, 알파벳 소문자 : 2, 숫자 : 4를 리턴합니다.)
알파벳이거나 숫자가 아니면 0을 리턴합니다.
예제
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#include <stdio.h>
#include <ctype.h>
void main()
{
char chString[] = "a1-2+&ZY8b";
for (int i = 0; chString[i] != '\0'; i++)
{
if (isalnum(chString[i]))
printf("alphanumeric : %c\n", chString[i]);
else
printf("not alphanumeric : %c\n", chString[i]);
}
}
|
cs |
isalnum함수를 사용하지 않고 직접 구현하려면 다음과 같이 구현하면 됩니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#include <stdio.h>
#include <ctype.h>
void main()
{
char chString[] = "a1-2+&ZY8b";
for (int i = 0; chString[i] != '\0'; i++)
{
if ( (chString[i] >= 'a' && chString[i] <= 'z')
|| (chString[i] >= 'A' && chString[i] <= 'Z')
|| (chString[i] >= '0' && chString[i] <= '9'))
printf("alphanumeric : %c\n", chString[i]);
else
printf("not alphanumeric : %c\n", chString[i]);
}
}
|
cs |
반응형
'개발공부 > C언어&C++' 카테고리의 다른 글
[C언어&C++] 시간 관련 함수(time, localtime, asctime, ctime, gmtime, mktime) (0) | 2021.06.10 |
---|---|
[C언어&C++] isdigit 함수(문자 숫자 확인 함수) (1) | 2021.05.08 |
[C언어&C++] isalpha 함수(문자 알파벳 확인 함수) (0) | 2021.04.30 |
[C언어&C++] rand, srand 함수 ( 난수(랜덤)생성 ) (0) | 2021.02.07 |
[C언어&C++] vector erase 활용 (0) | 2020.12.24 |