名人堂_丿_帅 发表于 2012-11-18 09:51:51

c语言关于float类型数据赋值问题 求解

这样给垃圾值赋值为什么能得到正确值???

# include <stdio.h>

int main(void)
{
        float sum = 50;
        float cnt = 5;
        float avg;

        printf("avg = %f\n", avg);//输出avg是垃圾值
        avg = sum / cnt;            //给垃圾值赋值
        printf("avg = %f\n", avg);//为什么能得到正确值???

        return 0;
}

在vc++6.0中输出结果:
avg = -107374176.000000
avg = 10.000000
Press any key to continue

活出自我CC 发表于 2012-11-19 21:32:25

你的第一行输出中。avg根本都没有赋值或者得到值,怎么可能有结果?另外,那个垃圾值是内存中剩余的上一次这个内存中的值。
页: [1]
查看完整版本: c语言关于float类型数据赋值问题 求解