• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

C++查看 IEEE 754 浮点数格式

OC/C/C++ 水墨上仙 2987次浏览

C++查看 IEEE 754 浮点数格式

//  A simple and practical way to show the format of the IEEE standard
for binary floating-point numbers (IEEE 754) is to use a union, as shown in the following example:
 
#include <iostream>
#include <basetsd.h>
#include <iomanip>
#include <cstdlib>
using namespace std;
 
union FloatNum //Here the tag name (FloatNum) is redundant.
 {
   float fx;//4 bytes variable
   long  lx;//4 bytes variable
 }fn;
 
union DoubleNum
 {
   double dx;  //8 bytes variable
   LONG64 lx;  //8 bytes variable
 }dn;
 
union LongDoubleNum
 {
   long double dx;  //12 bytes variable
   long  lx[3]; // 3 * 4 bytes variable
 }ldn;
 
int main()
{
    fn.fx = -118.6253433; //variable assignment declaration statement
    //show size of float
    cout << "\nsize of float = " << dec << sizeof(fn.fx) << endl;
    cout << setprecision(10) << fn.fx << " = 0x" << hex << fn.lx << endl;
 
    dn.dx =  112.6255678;  //assign value to a variable
    //show size of double
    cout << "\nsize of double = " << dec << sizeof(dn.dx) << endl;
    cout << dn.dx <<"  = 0x" << hex << dn.lx << endl;
 
    ldn.dx = -12.61256125;  //assign value to a variable
    //show size of long double
    cout << "\nsize of long double = " << dec << sizeof(ldn.dx) << endl;
    cout << setprecision(10) << ldn.dx << " = 0x" << hex << ldn.lx[2] << ldn.lx[1] << ldn.lx[0] << endl;
    return 0;
}


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明C++查看 IEEE 754 浮点数格式
喜欢 (0)
加载中……