0

我使用vc6,我做了一个这样的结构:

struct FileInfo
{
    char   filename[200] = {0};
    char   ext[20] = {0};
    int    f_size=0;
    int    offset=0;
    char*  pData=0;
};

但我遇到了一个error C2059: syntax error : '{'错误,我不知道如何正确初始化里面的数组。

4

1 回答 1

4

在创建此结构的实例时初始化成员。在 C++ 中,这是在构造函数中完成的,而在 C 中,它是这样完成的:

struct FileInfo my_file_info = { { 0 }, { 0 }, 0, 0, 0 };

如果您不想添加构造函数(例如,如果结构在 C 和 C++ 程序之间共享),C 方式当然也可以在 C++ 中使用。

于 2013-05-26T15:01:04.327 回答