/J(默认 char 类型是无符号的)

将默认 char 类型从 signed char 更改为 unsigned char,并且在将 char 类型扩展到 int 类型时,将对其进行零扩展。

语法

/J

备注

如果将 char 值显式声明为 signed,则 /J 选项不会影响它,并且当将该值扩展到 int 类型时,将对其进行符号扩展。

/J 选项定义 _CHAR_UNSIGNED,其与 LIMITS.h 文件中的 #ifndef 一起用于定义默认 char 类型的范围。

ANSI C 和 C++ 不需要 char 类型的特定实现。 在使用最终会转换为英语以外的语言的字符数据时,此选项非常有用。

注意

如果您将此编译器选项用于 ATL/MFC,则可能产生错误。 尽管您可以通过定义 _ATL_ALLOW_CHAR_UNSIGNED 禁用此错误,但此解决方法不受支持可能不会总是有用。

在 Visual Studio 开发环境中设置此编译器选项

  1. 打开项目的“属性页”对话框。 有关详细信息,请参阅在 Visual Studio 中设置 C++ 编译器和生成属性

  2. 选择“配置属性”>“C/C++”>“命令行”属性页

  3. 在“附加选项”中,输入 /J 编译器选项。

以编程方式设置此编译器选项

另请参阅

MSVC 编译器选项
MSVC 编译器命令行语法
在 Visual Studio 中设置 C++ 编译器并生成属性