#define GETVARNAME(var,namebuf,value ) strcpy( (namebuf),#var);value = var
当然你的value,var的类型要是一样的。
//////////////////////////////////////////////////////////////////////
#include <iostream>
#include <stdlib.h>
using namespace std;
#define PRINTVARNAME( var , name ,value ) {strcpy(name ,#var);value = var;}
int main(int argc, char *argv[])
{
int A = 10,B = 0;
char name[64];
PRINTVARNAME( A ,name,B);
cout<<name<<" = "<< B <<endl;
system("PAUSE");
return 0;
}
////////
//结果
A = 10
请按任意键继续 . . .
博客展示了C++中通过宏定义获取变量名和值的代码示例。定义了GETVARNAME和PRINTVARNAME宏,在main函数中使用PRINTVARNAME获取变量A的名称和值,并输出结果,最后调用system函数暂停程序。
8258

被折叠的 条评论
为什么被折叠?



