-1

以下の式の場合:-

int main()
{
    unsigned ui = 1;
    float fval = 2.5;
    cout << sizeof(ui) << endl << sizeof(fval) << endl;
    cout << typeid(ui+fval).name();
}

次の出力が得られます:-

4
4
f

ui+fval は float のようです。

ただし、float と unsigned int の両方が 4 バイトであり、すべての unsigned int 値が float 内に収まるわけではないことを考えると、fval は unsigned int に変換されるべきではないでしょうか?

4

1 に答える 1