名前: nide 日時: 2003-01-13 17:30:01 IPアドレス: 160.11.72.*
>>15039 面白そうなので試してみました。Linux 2.4.18+gcc 2.95.4 でも #define stricmp strcasecmp を加えるだけでうまく動作しました。いくつか意見を。 (1) void main(){} より、ぜひ int main(){… return(0)} にして下さい。前者だと正常終了時のリターンコードが 不定となって、正常終了かどうかがシェル側から判断で きず、特にUNIX環境での利用には致命的になります。 (これはこのプログラムに限らず、Cプログラミング全般 の常識として言えることではありますが。) (2) 注釈に // と /* */ を混用しているのは何か意図 があるのでしょうか。/* */だけにした方が、通るCコン パイラが増えるのではないかと思いますが。 (3) #define SHIFT_JIS は使われていないようです。 また、READ_TEXT, PATH_SEP, PATH_SEPUは使われておらず、 WRITE_BINARYはUNIXでも"rb"にしてしまえば支障ないので、 結局 #define UNIX での場合分けも使っていないことに なります。これらは除去してもいいのではないでしょうか。 (4) 一時ファイルの名前の決め方は、特にUNIXではもう 少し慎重にした方が良いと思います。自分でもちょっと 見てみます。
この書き込みへの返事: