2012年10月6日土曜日

開発環境

『実践プログラミング 第3版』 (Steve Oualline (著)、 望月 康司 (監修) (翻訳)、 谷口 功 (翻訳)、 オライリー・ジャパン、1998年、ISBN978-4900900646) II部(単純なプログラミング)の10章(Cプリプロセッサ)10.8(プログラミング実習)実習10-3を解いてみる。

実習10-3.

コード(TextWrangler)

#include <stdio.h>
#define IS_HEX(n) ((n) >= '0' && (n) <= '9') \
  || ((n) > 'A' && (n) <= 'F') \
  || ((n) > 'a' && (n) <= 'f')

int main(){
  char line[100];
  while(1){
    printf("数値を入力: ");
    fgets(line,sizeof(line),stdin);
    if(IS_HEX(line[0])){
      printf("16進数\n");
    } else {
      printf("16進数ではない\n");
    }
  }
  return (0);
}

入出力結果(Terminal)

$ cc -g -o sample sample.c
$ ./sample
数値を入力: 0
16進数
数値を入力: 1
16進数
数値を入力: 2
16進数
数値を入力: 3
16進数
数値を入力: 4
16進数
数値を入力: 5
16進数
数値を入力: 6
16進数
数値を入力: 7
16進数
数値を入力: 8
16進数
数値を入力: 9
16進数
数値を入力: 10
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 コメント:

コメントを投稿