開発環境
- OS X Lion - Apple(OS)
- TextWrangler(Text Editor) (BBEditの無料、light版)
- 言語: C
- コンパイラ: UNIX ccコンパイラ (汎用UNIX)
『実践プログラミング 第3版』 (Steve Oualline (著)、 望月 康司 (監修) (翻訳)、 谷口 功 (翻訳)、 オライリー・ジャパン、1998年、ISBN978-4900900646) II部(単純なプログラミング)の10章(Cプリプロセッサ)10.8(プログラミング実習)実習10-3を解いてみる。
実習10-3.
コード(TextWrangler)
#include <stdio.h> #define is_digit(x) (('0' <= (x)) && ((x) <= '9')) #define is_hex(x) (is_digit(x) || \ (('A' <= (x)) && ((x) <= 'F')) || \ (('a' <= (x)) && ((x) <= 'f'))) int main(){ char a; char line[100]; while(1){ printf("数値を入力: "); fgets(line,sizeof(line),stdin); sscanf(line,"%c",&a); if(is_hex(a)){ printf("16進数\n"); } else { printf("16進数ではない\n"); } } return (0); }
入出力結果(Terminal)
$ cc -g -o sample sample.c $ ./sample 数値を入力: 5 16進数 数値を入力: 6 16進数 数値を入力: 7 16進数 数値を入力: 8 16進数 数値を入力: 9 16進数 数値を入力: 0 16進数 数値を入力: A 16進数 数値を入力: B 16進数 数値を入力: C 16進数 数値を入力: D 16進数 数値を入力: E 16進数 数値を入力: F 16進数 数値を入力: G 16進数ではない 数値を入力: a 16進数 数値を入力: b 16進数 数値を入力: c 16進数 数値を入力: d 16進数 数値を入力: e 16進数 数値を入力: f 16進数 数値を入力: g 16進数ではない 数値を入力: ^C $
0 コメント:
コメントを投稿