0

我想做类似的事情:

const int DEFAULT_INTDATA = 0;
const char DEFAULT_STRDATA[] = "default";

typedef struct
{
    int intdata;
    char * strdata;
} DATA;

DATA data;
data.intdata = DEFAULT_INTDATA;
data.strdata = DEFAULT_STRDATA;

// output JSON string of "data".
printf("%s", JSONstringify(data));
4

1 回答 1

3

不是一般的。标准 C 不具备在运行时获取数据字段的名称和类型所需的反射功能。

您当然可以为某个结构编写一个 JSON 序列化程序,但不能使用任何结构并将其转换为 JSON 或从 JSON 转换为 JSON 序列化器。

于 2012-10-08T17:45:33.303 回答