首页 > 代码库 > 位制转换题2

位制转换题2

输出以下代码结果:

#include <stdio.h>int main() {    printf("%f\n", 5);    printf("%d\n", 5.01);    return 0;}

 

结果:

0.0000001889785610

 

析:

1)5是int型,%f 要接收的参数是 double型,结果5 由4个字节的int型扩展成8个字节的double型,出现了内存访问越界。其结果是未知的。
2)5.01是 double型,结果%d 要接收 的参数是int型,结果只取了5.01内存中的4个字节。输出了一个大数。

 

位制转换题2