当日のOHP資料です。
次の二つのファイルを、c:\usr\c\includeに保存する。
Download : sample-001.c ( SJIS 版 )
/* * 2013/06/14 sample-001.c */ /* * 最初のプログラムは "Hello, World" */ #include <stdio.h> /* * main 関数 */ int main ( int argc, char *argv[] ) { printf ( "Hello, World\n" ); /* "Hello, World" という文字列と改行 ( "\n" ) を表示する */ return 0; }
C:\usr\c>sample-001 Hello, World C:\usr\c>
Download : sample-002.c ( SJIS 版 )
/* * 2013/06/14 sample-002.c */ /* * include の役割 */ /* * include をコメントの中にいれたので、無効になる * #include <stdio.h> */ /* * main 関数 */ int main ( int argc, char *argv[] ) { printf ( "Hello, World\n" ); /* "Hello, World" という文字列と改行 ( "\n" ) を表示する */ return 0; }
C:\usr\c>cc -o sample-002.exe sample-002.c sample-002.c: 関数 'main' 内: sample-002.c:22:2 警告: 組み込み関数 'printf' の互換性がない暗黙な宣言です [デファオルトで有効] C:\usr\c>sample-002 Hello, World C:\usr\c>
Download : sample-003.c ( SJIS 版 )
/* * 2013/06/14 sample-003.c */ /* * include の役割 */ /* * include をコメントの中にいれたので、無効になる * #include <stdio.h> */ /* * main 関数 */ int main ( int argc, char *argv[] ) { /* * printf もなくしたら */ return 0; }
C:\usr\c>sample-003 C:\usr\c>
Download : sample-004.c ( SJIS 版 )
/* * 2013/06/14 sample-004.c */ /* * コマンドライン引数の扱い */ #include <stdio.h> /* * main 関数 */ int main ( int argc, char *argv[] ) { printf ( argv[0] ); /* argv[0] にはコマンド名が入っている */ printf ( "\n" ); return 0; }
C:\usr\c>sample-004 sample-004.exe C:\usr\c>
Download : sample-005.c ( SJIS 版 )
/* * 2013/06/14 sample-005.c */ /* * コマンドライン引数の扱い */ #include <stdio.h> /* * main 関数 */ int main ( int argc, char *argv[] ) { printf ( argv[1] ); /* argv[1] には最初の引数が入っている */ printf ( "\n" ); return 0; }
C:\usr\c>sample-005 abc 123 xyz abc C:\usr\c>
Download : 20130614-01.c ( SJIS 版 )
/* * CDATE FILENAME * * コマンド引数に言語(一文字)を指定し、その言語によって異る国の挨拶をする */ #include <stdio.h> /* * hello ( char contry ) * char contry : 国を表す一文字 * j : 日本 * e : 英語 * c : 中国 * f : フランス語 * g : ドイツ語 */ void hello ( char cmd ) { if ( cmd == 'j' ) { /* 'j' の時は、日本語にする */ printf ( "こんにちは\n" ); } else if ( cmd == 'e' ) { /* 'e' の時は、英語にする */ printf ( "Hello\n" ); } else if ( cmd == 'c' ) { /* 'c' の時は、中国語にする */ printf ( "ニイハオ\n" ); } else if ( cmd == 'f' ) { /* 'f' の時は、フランス語にする */ printf ( "Bonjour\n" ); } else if ( cmd == 'g' ) { /* 'g' の時は、ドイツ語にする */ printf ( "Guten tag\n" ); } else { /* どれでもなければ.. */ printf ( "???\n" ); } } /* * main */ int main( int argc, char *argv[] ) { /* 最初の引数の最初の文字を hello 関数に渡す */ /* ** この部分を完成させなさい */ return 0; }
C:\usr\c\> 20130614-01-QQQQ japanese こんにちは C:\usr\c\>