Section Next|Prev|Up|Index|凡例


3.3.1 フローグラフ作成 - cflow

cflow は C ソース・プログラムの関数呼出し関係を解析、出力します。 ソース・プログラムは、一旦yacc(1)、lex(1)に通して、Cのソースに変換したあと 解析します。 言語はサフィックスから判断します。言語とサフィックスの対応は以下の通りです。
サフィックス言語
.c C 言語
.y yacc
.l lex
.s アセンブラ言語
.o オブジェクト
【入力フォーマット】
cflow [-r] [-ix] [-i_] ファイル名 ....

【主なオプション】

【実行例】
最も基本的な実行例 この出力結果は、各行について以下の意味を持ちます。 オプションにて呼び出し側と被呼び出し側の表示を入れ換える事も出来ます。
	%  cat -n sample1.c
	     1	int sub(a,b)
	     2	
	     3	int a,b;
	     4	{
	     5		return a*b;
	     6	}
	     7	
	     8	main()
	     9	{
	    10		int i,j;
	    11		for(i=0;i>10;i++){
	    12			j=2*i;
	    13			printf("%d\n",sub(i,j));
	    14		}
	    15		exit(0);
	    16	}

	% cflow sample.c
	  1 main: int(), 
	  2 sub: int(), 
	  3 printf: <>

	% cflow -r sample.c
	  1 main: int(), 
	  2 printf: <>
	  3 main : <>
	  4 sub: int(), 
	  5 main : 3


Section Next|Prev|Up|Index|凡例