1

私はCで次のコードセクションを持っています:

int main(int argc, char *argv[]) 
{
    char *input;
    int lines;
    int p;


    input = (char*)malloc(10);
    input = argv[0];
    for(p=0;p<10;p++)
    {
        printf("%c",input[p]);
    }

私の Unix システムでは、次の呼び出しを行います。

./program_name.exe < inputfile

whereinputfileは、以下を含むファイルです。000000010Z

前のコマンドに対して受け取る出力は次のとおりです。

./program_

私は何が欠けていますか?

4

1 に答える 1

1

argv[0] 実行中のプログラムの名前を保持します。そして、それはあなたが印刷する唯一のものです。

あなたがやろうとしているのは、ファイルが標準入力であったため、ファイルから読み取ることです。しかし、あなたはまだそれを読まなければなりません。getchar() または入力を読み取るその他の関数を使用します。

于 2013-09-19T23:20:29.470 に答える