関数に渡される引数を取得したい。たとえば、電話があったら
printf( "%d%d"、i、j);
出力は次のようになります
%d%d
i
j
RecursiveASTVisitorのVisitCallExpr()を使用して関数呼び出しを取得できます。引数の数と引数の種類も取得できます。しかし、私は引数を取得する方法がわかりません。
bool MyRecursiveASTVisitor::VisitCallExpr (clang::CallExpr *E)
{
for(int i=0, j=E->getNumArgs(); i<j; i++)
{
llvm::errs() << "argType: " << E->getArg(i)->getType().getAsString() << "\n";
}
return true;
}
出力:
argType:char *
argType:int
argType:int
議論を得るのを手伝ってください。