bashコマンドの引数をcのプログラムに渡すにはどうすればよいですか?例えばbashからCへの引数の受け渡し
、私はこのようなものになりますコマンドがある場合:
./c_program argument
私はCプログラム自体にその引数にアクセスするにはどうすればよいですか? bashのように、$ 1などの変数を使用できますか?
bashコマンドの引数をcのプログラムに渡すにはどうすればよいですか?例えばbashからCへの引数の受け渡し
、私はこのようなものになりますコマンドがある場合:
./c_program argument
私はCプログラム自体にその引数にアクセスするにはどうすればよいですか? bashのように、$ 1などの変数を使用できますか?
は、次のコードを試してみて、それが引数の数をどのように動作するかを参照してください。
#include <stdio.h>
int main(int argc, const char *argv[])
{
for (int i=0; i<argc; i++) {
printf("%s\n",argv[i]);
}
return 0;
}
としてステファン・レヒナー彼のコードに記載された、あなたは変数argc
とargv
を使用しています。まず、これらの変数を取得するコードにint main(int argc, char **argv) {
が必要です。 char **argv
は、しかし異なっていても、すなわちchar *argv[]
作品などconst char *argv[]
char **argv
はないことができ、本質的にstrings
の配列であるが、文字列のこの種char array
(「文字列」の略)などのよく知られています。あなたのコマンドが"./c_program --the-input-you-were-expecting-here"
た場合は、このargv[0]
の結果に"./c_program"
と等しくなるARGVが最初の指標として、あなたのコマンドの./c_program一部を含む、:
int option1 = 0;
for(int i = 1; i < argc; i++) {
if(strcmp(argv[i], "--the-input-you-were-expecting-here") == 0)
option1 = 1;
}
注:あなたは、多少のようにそれを使用したいと思います。
'main()、argv、argc'を参照してください - ' C'本の最初の数ページになければなりません - また、あなたの問題タイトルを使ってインターネット検索から決定できます – KevinDTimm