c - 如何在 C 中将函数的 I/P 参数打印为变量

标签 c function

假设我有:

func1()
{
    int var = something;
    func2(var);  /* Call func2() with var as I/P parameter */
    ......
    ......
}

func2 (int var)
{
   .....
}

我们可以使用__FUNC__在迹线中打印func2的名称。

但是有没有办法打印(在f2()内)调用函数(即f1())中使用的变量NAME来调用此函数:

痕迹中的某些内容(在f2()内),例如:

func2(var)

最佳答案

那么,您可以修改函数以字符串化输入:

#ifdef INCLUDE_PARAM_TRACE
    #define func2(a) _func2(a, #a)
#endif

#ifdef INCLUDE_PARAM_TRACE
    void _func2(int a, const char * param_string)
#else
    void func2(int a)
#endif

但是,除非您非常注意定义方法的方式和位置,否则这很快就会变得相当困惑:-)

关于c - 如何在 C 中将函数的 I/P 参数打印为变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8504336/

相关文章:

C-分配内存的函数

function - Powershell 函数 elseif 语句不起作用

cudaMemcpy 没有将主机矩阵复制到设备(给出段错误)

java - 识别音频文件中的口头语言

c - C : Continuous Prompt for Input简介

c - 为什么当用户输入 -0.1 时这个循环没有立即中断

javascript - 使用 .reduce() 将两个值相乘(包括之间的值)的方法

c - 使创建的菜单的菜单项可使用 GTK+ 运行

Swift 4 函数参数 var

javascript - JS 函数可以接受没有任何定义参数的实参对象吗?