#author("2019-10-02T08:54:52+09:00","default:honma","honma")
#author("2019-12-26T15:08:21+09:00","default:honma","honma")
*getopt [#g1daa4a5]

コマンドラインオプションを解釈するプログラムのサンプル。~
第3引数は、受け付けるオプション文字で構成された文字列。 文字のあとにコロン (:) がある場合は、 オプションには引き数が必要であることを示している。

参考:[[GETOPT:https://linuxjm.osdn.jp/html/LDP_man-pages/man3/getopt.3.html]]

#highlight(c){{
	while ((opt = getopt(argc, argv, "n:b:q")) != -1) {
		switch (opt) {
		case 'n':
			lp = atoi(optarg);
			break;
		case 'b':
			size = atoi(optarg) * 1024;
			break;
		case 'q':
			verbose = 0;
			break;
		default:
			usage();
			return -1;
		}
	}
}}
#highlight(end)
[[ソースコード:https://www.chobits.com/pukiwiki/index.php?plugin=attach&pcmd=open&file=memloop.c&refer=getopt]]

#ref(memloop.c)

** 簡単なベンチマークを行うためのサンプルコード [#nc49de52]

メモリフィルに要する時間を計測するプログラム。

使い方

 Usage: memloop [options]
  -n <val>  loop count
  -b <val>  buffer size (kB)
  -q        quiet mode

実行例

 $ ./memloop -n 3 -b 384
 loop count = 3
 buffer size = 384kB
 time[0] = 828098, ave = 828098.00
 time[1] = 828349, ave = 828223.50
 time[2] = 827961, ave = 828136.00
 ave = 828136.00, min = 827961, max = 828349 [us]

#htmlinsert(amazon_pc.html);

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS