我想输出一些数据到一个文件。例如,假设我有两个向量:
vector<double> data1(10);
vector<double> data2(10);
我不知道如何将变量名'data1'转换为字符串。
发布于 2018-01-19 13:33:07
你可以使用预处理器“stringify” #
来做你想做的事情:
#include <stdio.h>
#define PRINTER(name) printer(#name, (name))
void printer(char *name, int value) {
printf("name: %s\tvalue: %d\n", name, value);
}
int main (int argc, char* argv[]) {
int foo = 0;
int bar = 1;
PRINTER(foo);
PRINTER(bar);
return 0;
}
name: foo value: 0
name: bar value: 1
发布于 2018-01-19 14:44:39
尝试这个:
#define GET_VARIABLE_NAME(Variable) (#Variable)
//在函数中
int var=0;
char* var_name= GET_VARIABLE_NAME(var);
https://stackoverflow.com/questions/-100007188
复制相似问题