私は、署名付き/署名なしの文字に関する多くの質問を経験しました。C++ には 3 つの異なる char 型があることを理解しています。現在、Visual Studio でコンパイルされた大きなコード ベースがあります。「デフォルトの char unsigned」設定は「いいえ」に設定されています。ここで、特定のプロジェクトをコード ベースに追加することになっています (現在のツール セットの一部になるように統合します)。このプロジェクトには、デフォルトの char を unsigned にする必要があることが強く強調されているドキュメントが付属しています。
今、私は疑問に思い始めました: 作者は、char を unsigned にする必要があるのに、なぜ「unsigned char」ではなく「char」を使用したのでしょうか? コードベースを変更して「デフォルトの署名なし文字」設定を「はい」に設定すると、何が問題になる可能性がありますか? そして、コードベースに追加することになっているプロジェクト全体で、すべての「char」を unsigned char に変更すると、何が問題になる可能性がありますか?
実際、私がおそらく尋ねるべきことは、「何も壊さずにこのプロジェクトをコードベースに追加するにはどうすればよいですか」ということでしたが、それは解決策を求めていることになり、何も学びません;)