0

我已经在 ARM 上成功清理和编译了一个用 C99 编码的可移植程序。我的任何源文件都无法使用 /ZW 进行编译。

Visual Studio 告诉我的只是我无法使用 /ZW 编译我的文件。

这可以使用 C99 代码Runtime Component吗?

什么使文件可以用 /ZW 编译?

4

1 回答 1

2

当前版本的 MSVC 不是 C99 编译器——尽管将来可能会改变,因为它支持 C11,因此,C99 的某些部分也有必要。

不过,目前,在移植到 MSVC 之前,您必须删除任何依赖 C99 的编码实践。另请注意,_snprintf()Microsoft 运行时中的行为与 C99 for 所需的行为不同snprintf() (重命名本身就是另一个问题)。在附件 K(边界检查接口)的 C11 中定义为可选的一些“更安全”函数与同名函数的 Microsoft 运行时版本之间也存在差异。另请参阅您是否使用 TR 24731 的“安全”功能

于 2013-08-04T20:57:16.417 回答