C 速查手冊
11.2.4 isxdigit()
ctype.h 的函數 (function) isxdigit() 測試參數 (parameter) 是否為十六進位數字,滿足條件回傳非 0 的值,否則回傳 0 。
以下程式接受使用者輸入字元 (character) ,並且判斷是否為十六進位數字
#include <stdio.h>
#include <ctype.h>
int main(void)
{
char t;
while (t = getchar()) {
if (t == EOF) {
break;
}
if (t == '\n') {
continue;
}
if (isxdigit(t)) {
printf("對,是十六進位數字...\n");
}
else {
printf("不是十六進位數字喔...\n");
}
}
return 0;
}
/* 《程式語言教學誌》的範例程式
http://kaiching.org/
檔名:cisxdigit.c
功能:示範 ctype.h 中函數 isxdigit() 的使用
作者:張凱慶 */
編譯後執行,程式等待使用者輸入
$ gcc cisxdigit.c |
$ a.out |
▊ |
先按 8 、 7 、 d 、 f,然後 Enter
87df |
對,是十六進位數字... |
對,是十六進位數字... |
對,是十六進位數字... |
對,是十六進位數字... |
▊ |
再按 m ,然後 Enter
m |
不是十六進位數字喔... |
▊ |
最後可同時按 ctrl 加 c 結束程式執行
^C |
$ |