C2059语法错误'string'?

时间:2013-04-23 12:36:07

标签: c++ c

extern "C" 
{
#endif
#include <stdint.h>
#include <limits.h>
#include "attributes.h"
}
#endif

我添加了extern "C" { } 然后我收到C2059 string错误 所以我尝试使用#endif,现在又有4个错误。

Error   1   error C2059: syntax error : 'string'    d:\c-sharp\c++ 
compiling\consoleapplication7\consoleapplication7\libavutil\rational.h 31 1
ConsoleApplication7

如何修复此字符串错误?

1 个答案:

答案 0 :(得分:17)

猜测,您是否在C源文件中包含此代码?

只有C ++需要(或理解)

extern "C" {防护。您可以从C文件中省略它们,应该将它们包含在C ++文件中,并且应该在头文件中使用__cplusplus ifdef来保护它们。

#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
#include <limits.h>
#include "attributes.h"
#ifdef __cplusplus
}
#endif