プログラムの入力をリダイレクトしようとしています。ターミナルで入力しているコマンドは次のとおりです。
./hello < name
「name」は、単一の文字列を含むファイルです。hello は、次のコードで構成されるコンパイル済みの C プログラムです。
int main(int argc, char *argv[])
{
char message[100] = "Hello ";
if(argc>1)
{
strcat(message, argv[1]);
strcat(message, "\n");
}
else
{
strcat(message, "there\n");
}
printf("%s", message);
return 0;
}
私が理解している限り、引数は名前ファイルの内容になるはずです。ただし、プログラムでは引数を検出できません (「こんにちは」と出力されます)。