課題57


  1. 記号定数の定義は cc コマンドでも行うことができます。
    cc -DDEBUG program.c
    
    上の例では、#define DEBUG 1 と定義されているものとして、 program.c をコンパイルします。
    cc -DMYNAME='"hinagata"' akiko.c
    
    上の例では#define MYNAME "hinagata" と定義されているものとして、 program.c をコンパイルします。'..'でくくっているのは、 ".."がシェルによって処理されてしまうのを防ぐためです。

  2. 次のようなソースプログラムにおいて、 「My name is あなたの名前」 という実行出力が得られるようにコンパイルする cc コマンドの引数を、 メールで tokoiまで送ってください。 Subject: は kadai57 としてください。

    /*
    ** プログラム名: kadai57
    ** 動作: 自己紹介
    ** 作者: 自分の名前、学籍番号
    ** 日付: 今日の日付
    */
    #include <stdio.h>
    
    char who[] = 
    #if X == 1
    "My"
    #elif X == 2
    "Your"
    #elif X == 3
    "His"
    #elif X == 4
    "Her"
    #else
    "Its"
    #endif
    ;
    
    int main(void)
    {
        printf("%s name is %s\n", who, NAME);
    }