体力,気力,ときどき知力

情報系大学院生 兼 HPC系ソフトウェアエンジニアのメモ書き.やったことを貼って後日にコピペ再現するために書いているので新規性・汎用性・芸術性は考えてません.数値計算,高精度演算,SIMD, vim, Linuxなど.

C言語,main文に引数を与える

Cでmainに引数を与える方法を結構みんな知らないらしいので書いておく.

 

int main(int argc, char **argv)

{

int a = atoi(argv[1]);

int b = atoi(argv[2]);

・・・・・・

gcc a.c とやってコンパイルして,"./a.out 5 10"などと実行する.

 

argcには引数の数(今回なら0-2まで使っているから3)

argv[0]にはchar型の実行ファイルの名前(今回なら./a.out)

argv[1]にはchar型の一つ目の引数(今回なら"5")

argv[2]にはchar型の一つ目の引数(今回なら"10")

が入る.atoiなど使ってint型にして使うとよい.

 

今度Makefileとか実行ファイルのオプションの付け方とかも書こう.