#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
请按任意键继续 . . .