gpt4 book ai didi

c++ - 错误 C2059 : syntax error :'}' when adding c source files to project

转载 作者:搜寻专家 更新时间:2023-10-30 23:59:36 25 4
gpt4 key购买 nike

我正在为 Windows Phone 8 在 vi​​sual studio express 中编写 C++ 应用程序。

我正在尝试使用 flite,一个用 c 语言编写的文本到语音库,到目前为止,我已经添加了它的源文件和 header ,并且我已经将所有个人的使用预编译 header 的选项设置为 no c 文件,但是源文件仍然无法编译,编译器会提示(多次):

 error C2059: syntax error : '.'
error C2059: syntax error : '}'

它在 flite 源中提示此代码的这些问题:

DEF_STATIC_CONST_VAL_STRING(ffeature_default_val,"0");

DEF_STATIC_CONST_VAL_STRING 的定义是:

#define DEF_CONST_VAL_STRING(N,S) const cst_val N = {{.a={.type=CST_VAL_TYPE_STRING,.ref_count=-1,.v={.vval= (void *)S}}}}

在这里你可以看到“.”和编译器提示的“}”。无论如何我都没有修改 c 源代码,它是为 iOS 和 Android 项目构建的,所以我假设我还没有掌握如何在 visual express 中包含 C 文件。另外,在 Visual Express 中,.c 文件旁边的图标是“++”:/

非常感谢任何帮助。

最佳答案

此语法:

struct MyStruct someObject = {.foo = bar, .baz = quux};

被称为指定初始化器。它仅在 C 的 C99 方言中有效——在 C89 和所有版本的 C++ 中无效。 Microsoft Visual Studio 的 C 编译器不兼容 C99,因此无法编译该代码。您必须将代码转换为使用 C89 或 C++,或者使用支持 C99 的不同编译器。

关于c++ - 错误 C2059 : syntax error :'}' when adding c source files to project,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15734367/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com