2017-01-18 8 views
-2

私はCプログラムを書いたばかりで、ターミナルでそれをやりとりする方法を知りたいと思います。私はちょうど書いたCプログラムとターミナルで対話する方法

int main(int argc, const char * argv[]) { 

    int arg; 
    for (arg = 0; arg < argc; ++arg) 
    { 
     printf("Arg %d is %s\n", arg, argv[arg]); 
    } 

    return 0; 
} 

マイ機能ヘッダーはvoid conv(int decimal, int y);次のとおりです。私のプログラムは無効であると私はメインに含まれていることすべてが、以下である一つの機能で構成されています。

私のMacの端末でいくつかの変換を行う簡単な方法を教えていただけますか?私はCの新人ですし、いくつかの助けが大いに評価されるでしょう。端子に

gcc your_program.c -o your_program 

と入力します。

+0

ここで、 'conv()'のコードはありますか?それは何をするためのものか?あなたはそれをどこから呼びますか? – DyZ

+1

あなたのプログラムを 'printargs.c'というファイルに保存したと仮定すると、まずコマンドライン' cc -o printargs printargs.c'を使ってプログラムをコンパイルします。コマンドライン './printargs somearg someotherarg yetanotherarg'を使ってプログラムを実行することができます。 –

+0

あなたの現在のコードはプログラム 'arglist'にコンパイルされていて、ターミナルで' ./arglist arg1 'として実行することができます。これは3番目です。 "' (1つのプログラム名と3つの引数)。どのように 'conv()'をあなたのプログラムに組み込むかはあなた次第です。文字列を数値に変換する標準のライブラリ関数、例えば ' 'の' strtol() 'とその親類があります。 –

答えて

0

は、コンパイルのコマンドを入力し、あなたのプログラムファイルがyour_program.cと呼ばれているとします。次に、プログラムを実行してください:

./your_program arg1 arg2... 

正確には、具体的な質問はありますか?私の答えがあなたに役立つことを願っています

+0

私の具体的な質問は、「関数がargv [1]とargv [2]で実装されるように、私は私のメインで何を入力すればよいのですか(2つの整数引数を受け入れるvoid戻り値型のconvという名前の関数) "たとえば、私は./main 8 2と入力し、8と2をconv関数で実行したいと考えています。 – Daniel

+0

argv [1]とargv [2]は文字列なので、atoi()やstrtol()を使ってargv [1]とargv [2]を整数に変換してconv()関数に渡す必要があります。 –

+0

私はあなたに感謝する必要があった正確に完璧! – Daniel

関連する問題