有没有办法获得在c中调用函数时使用的参数名称

时间:2016-02-29 12:42:53

标签: c function arguments

我在C中尝试获取调用函数时使用的变量的名称,如下所示:

func(varA, varB)

我想知道参数(varA, varB)

的名称

我正在打印几个矩阵的内容,如果有任何简单的方法来区分它们而不必将名称实际发送为字符串,我感到很奇怪。

谢谢

2 个答案:

答案 0 :(得分:1)

编译并执行C程序时,基本上不再存在变量名

所以,不,你没有办法从你想要的接收参数中得到一个实际的参数(变量) name

答案 1 :(得分:1)

如果不更改功能定义,则无法进行此操作。

您可以手动传递名称或使用宏:

#define func( a , b )    func2( a , b , #a , #b )

func2( type a , type b , const char* namea , const char* nameb ){ ...

预处理代码时,operator#会将变量转换为字符串。