C変換を調べて、私がよく理解していない整数プロモーションに関する段落を見つけました、それは言います:
"Integer types smaller than int are promoted when an operation is performed on them. If all values of the original type can be represented as an int, the value of the smaller type is converted to an int; otherwise, it is converted to an unsigned int"
それを考慮して:
符号なし整数型のランクは、対応する符号付き整数型のランクと同じです。
long long intのランクは、long intのランクよりも大きく、intのランクよりも大きく、short intのランクよりも大きく、signedcharのランクよりも大きくなっています。
質問は次のとおりです。intよりも小さい型をintで表すべきではないのはなぜですか。また、unsigned intが、intが表すべきではない値を表すことができるのはなぜですか?
前もって感謝します。