# C 코드 조각. is_valid_hex
#include <stdlib.h>
#include <assert.h>
#include <stdio.h>
#include <stdbool.h>
#include <string.h>
/*
* 입력 문자열 str 이 16 진수인지 확인한다.
* ex, is_valid_hex("00F1") => return true
* ex2, is_valid_hex("FZ") => return false
*/
bool is_valid_hex(char* str){
assert(str);
int l = (int)strlen(str), i;
for(i=0;i<l;i++) {
if ('0' <= str[i] &&
str[i] <= '9')
continue;
if('A' <= str[i] &&
str[i] <= 'F')
continue;
if('a' <= str[i] &&
str[i] <= 'f')
continue;
return false;
}
return true;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28