我正在尝试使用VS2017编写“内核”。为此,我设置了“忽略所有默认库”(/ NODEFAULTLIB)和“忽略标准包含路径”(/ X)选项。但是,如果我尝试定义自己的size_t
,则编译器会抱怨已将其定义为其他类型。我正在使用“编译为C代码”(/ TC)选项,该选项显然不允许我在整个代码中使用size_t
,因为它没有定义。如果我使用“编译为C ++代码”(/ TP),似乎确实定义了size_t
并且允许在我的代码中使用已经定义的类型(编辑:可能是因为,C ++的sizeof
运算符的输出为size_t
,而C的输出设置为size_t的基础基类型?)。
如果要紧的话,我也在使用/ Driver。