【C语言学习】类型转换

    xiaoxiao2023-09-19  1

    void foo(void) { unsigned int a = 6; int b = -20; (a+b > 6) ? puts(">6") : puts("<=6"); }

    结果是>6。 因为b会自动转换成无符号型,成一个很大的数。

    自动转换

    char, short ---->int------>unsigned—–>long—>double Float -----double

    赋值转换

    1.int —float/double 数值不变,以浮点数存储 2.Float/double —int 舍弃小数部分 3.char — int 有符号高位补1,无符号补0 4.Signed int – long 符号扩展,int为正则高位补0,反之补1 5.Unsigned —long 直接补0

    转载请注明原文地址: https://ju.6miu.com/read-1279097.html
    最新回复(0)