/J (既定の char 型の unsigned への変更)
既定の char
型を signed char
から unsigned char
に変更します。char
型は、int
型に上位変換されるとゼロ拡張されます。
構文
/J
解説
char
値を signed
として明示的に宣言すると、/J オプションはそれに適用されず、値は int
型に上位変換されるときに符号拡張されます。
/J オプションで定義されている _CHAR_UNSIGNED
は、既定の char
型の範囲を定義するために、LIMITS.h ファイルで #ifndef
と一緒に使用されます。
ANSI C および C++ では、char
型の特定の実装は必要ありません。 このオプションは、最終的に英語以外の言語に翻訳される文字データを使用している場合に便利です。
Note
ATL/MFC でこのコンパイラ オプションを使用すると、エラーが生成される可能性があります。 _ATL_ALLOW_CHAR_UNSIGNED
を定義することでこのエラーを無効にできますが、この回避策はサポートされておらず、常に機能するとは限りません。
Visual Studio 開発環境でこのコンパイラ オプションを設定するには
プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。 詳細については、Visual Studio での C++ コンパイラとビルド プロパティの設定に関する記事を参照してください。
[構成プロパティ]>[C/C++]>[コマンド ライン] プロパティ ページを選択します。
[追加オプション] に、「/J」コンパイラ オプションを入力します。
このコンパイラ オプションをコードから設定するには
- 以下を参照してください。DefaultCharIsUnsigned
関連項目
MSVC コンパイラ オプション
MSVC コンパイラ コマンド ラインの構文
Visual Studio で C++ コンパイラとビルド プロパティを設定する