Last Update 2023/09/02
概要
コマンドライン引数無しでの呼び出し
sample.cpp
#include <iostream>
int main() // 引数無し
{
std::cout << "「sample」実行" << std::endl;
}
実行結果
$ gcc -Wall sample.cpp -lstdc++
$ ./a.out
「sample」実行
$ ./a.out aa bb cc
「sample」実行 <--- コマンドライン引数がある場合でもエラーは発生しない
コマンドライン引数取得を伴う呼び出し
sample.cpp
#include <iostream>
int main(int argc, char *argv[]) // 引数有り
{
std::cout << "引数個数 : " << argc << std::endl;
for (int i=0; i<argc; i++)
{
if (i == 0)
{
std::cout << "argv[0] --- 呼び出されたプログラム名 : " << argv[0] << std::endl;
}
else
{
std::cout << "argv[" << i
<< "] --- コマンドライン引数[" << i
<< "番目] : " << argv[i] << std::endl;
}
}
}
実行結果
$ gcc -Wall sample.cpp -lstdc++
$ ./a.out
引数個数 : 1
argv[0] --- 呼び出されたプログラム名 : ./a.out
$ ./a.out aa bb cc
引数個数 : 4
argv[0] --- 呼び出されたプログラム名 : ./a.out
argv[1] --- コマンドライン引数[1番目] : aa
argv[2] --- コマンドライン引数[2番目] : bb
argv[3] --- コマンドライン引数[3番目] : cc
実行環境
GNU bash, version 5.1.16
GCC-12.2.0
GNU C Library 2.36
GNU Binutils 2.39
GCC-12.2.0
GNU C Library 2.36
GNU Binutils 2.39
コード例・出力内容中の表記
・実行例中の太字表記部分は、コマンドなどの入力された文字列を示します。
・「︙」や「...」の着色省略表記は、 実際のソースコードや出力内容などを省略加工した部分を示します。
・「︙」や「...」の着色省略表記は、 実際のソースコードや出力内容などを省略加工した部分を示します。