代码:程序清单4.12_floatcnv.c程序_《C Primer Plus》P75

// floatcnv.cpp : 定义控制台应用程序的入口点。
//
/* flaotcnv.c -- 不匹配的浮点数转换 */

/*
    时间:2018年06月19日 00:06:49
    代码:程序清单4.12_floatcnv.c程序_《C Primer Plus》P75
    目的:了解_不匹配的浮点数转换_将输出千奇百怪的结果
*/

#include "stdafx.h"


int _tmain(int argc, _TCHAR* argv[])
{
    float n1 = 3.0;
    double n2 = 3.0;
    long n3 = 2000000000;
    long n4 = 1234567890;

    printf("%.1e %.1e %.1e %.1e\n", n1, n2, n3, n4);
    printf("%ld %d\n", n3, n4);
    printf("%ld %ld %ld %ld\n", n1, n2, n3, n4);
    getchar();

    return 0;
}

/*
    在VS2010中运行结果:
-----------------------------------
3.0e+000 3.0e+000 3.1e+046 1.1e-307
2000000000 1234567890
0 1074266112 0 1074266112
------------------------------------------
    总结:
        混淆了整数和浮点类型时,结果是千奇百怪
------------------------------------------
*


猜你喜欢

转载自blog.51cto.com/13555061/2130379
今日推荐