C++将保存char、int 和double到txt文件中

 更新时间:2023年08月04日 11:20:05   作者:他人是一面镜子,保持谦虚的态度  
这篇文章主要介绍了C++如何将保存char、int 和double到txt文件中,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

C++保存char、int 和double到txt文件

定义文件保存的路径

FILE *ID_AZ_EL_file = fopen("/home/jht/VIns_Code/GVINS/output/ID_AZ_EL.txt", "w"); 

具体的程序

 int Sate_NUM = curr_obs[j]->sat;  
        char na_sys;
       if(sys == SYS_GPS)
         na_sys = 'A';   
       else if(sys == SYS_BDS)   
         na_sys = 'C';     
       else if(sys == SYS_GLO)   
         na_sys = 'R';
       else if(sys == SYS_GAL)   
         na_sys = 'E';
     //  char c_sate_num= (char) (sate_num+'0');
     //  strcat(na_sys,c_sate_num);
       double Azimuth    = Azel_11[0] * (180.0 / 3.14);
       double Elevation  = Azel_11[1] * (180.0 / 3.14);
    std::cout<<"=----------------Sate_NUM = "<<Sate_NUM<<std::endl;  
    std::cout<<"=----------------Azimuth = "<<Azimuth<<std::endl; 
    std::cout<<"=----------------Elevation = "<<Elevation<<std::endl; 
       if(i==10)  
       {
         fprintf (ID_AZ_EL_file, "%c%i  %3.0f  %3.0f\n",na_sys,Sate_NUM,Azimuth,Elevation); 
         //  fprintf (ID_AZ_EL_file, "%5.2f,%5.2f\n", Azimuth,Elevation); 
       }

C++中各种类型char、int、long、double等数据范围

概念、整型:表示整数、字符和布尔值的算术类型合称为整型(integral type)。

关于带符号与无符号类型:

  • 整型 int、stort  和  long 都默觉得带符号型。
  • 要获得无符号型则必须制定该类型为unsigned,比方unsigned long。

unsigned int类型能够简写为unsigned,也就是说,unsigned后不加其它类型说明符就意味着是unsigned int。

一字节表示八位,即:1byte = 8 bit;

int: 4byte =  32 bit

有符号signed范围:-2^31 ~ 2^31-1

  • 即:2147483647 ~ -2147483648
  • 无符号unsigned范围:0 ~ 2^32-1(4.29 * 10^9 = 4.29e+9)
  • 即:4294967295 ~ 0
  • long: 4 byte = 32 bit 同int型

long long:

  • 范围:-9223372036854775808 ~ 9223372036854775807(>10^18)

double: 8 byte = 64 bit

  • 范围:1.79769e+308 ~ 2.22507e-308

long double: 12 byte = 96 bit

  • 范围: 1.18973e+4932 ~ 3.3621e-4932

float: 4 byte = 32 bit

  • 范围: 3.40282e+038 ~ 1.17549e-038

int、unsigned、long、unsigned long 、double的数量级最大都仅仅能表示为10亿,即它们表示十进制的位数不超过10个,即能够保存全部9位整数。

而short仅仅是能表示5位;

另外对于浮点说而言:使用double类型基本上不会有错。

在float类型中隐式的精度损失是不能忽视的,二双精度计算的代价相对于单精度能够忽略。

其实,在有些机器上,double类型比float类型的计算要快得多。

float型仅仅能保证6位有效数字,而double型至少能够保证15位有效数字(小数点后的数位),long double型提供的精度通常没有必要,并且还要承担额外的执行代价。

double是8字节共64位,当中小数位占52位,2-^52=2.2204460492503130808472633361816e-16,量级为10^-16,故可以保证2^-15的全部精度。

在有些机器上,用long类型进行计算所付出的执行时代价远远高于用int类型进行相同计算的代价,所以算则类型前要先了解程序的细节而且比較long类型与int类型的实际执行时性能代价。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • C++ pair的用法案例详解

    C++ pair的用法案例详解

    这篇文章主要介绍了C++ pair的用法案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • 贪心算法的C语言实现与运用详解

    贪心算法的C语言实现与运用详解

    这篇文章主要介绍了贪心算法的C语言实现与运用详解,运用么,就是文中所附的ACM练习题,哈哈:D需要的朋友可以参考下
    2015-08-08
  • MFC实现对话框编辑控件上拖拽文件

    MFC实现对话框编辑控件上拖拽文件

    这篇文章主要为大家详细介绍了MFC实现对话框编辑控件上拖拽文件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • 带你了解C语言的数据的存储

    带你了解C语言的数据的存储

    这篇文章主要为大家详细介绍了C语言的数据的存储,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能给你带来帮助
    2021-08-08
  • 详解C++动态内存管理

    详解C++动态内存管理

    这篇文章主要为大家详细介绍了C++中动态内存管理相关资料,文中示例代码讲解详细,对我们学习C++具有一定帮助,感兴趣的小伙伴快跟随小编一起学习
    2023-05-05
  • C++定义和初始化string对象实例详解

    C++定义和初始化string对象实例详解

    这篇文章主要为大家介绍了C++定义和初始化string对象实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • C++实现二分法求方程近似解

    C++实现二分法求方程近似解

    这篇文章主要为大家详细介绍了C++实现二分法求方程近似解,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • memset函数的使用分析

    memset函数的使用分析

    本篇文章是对memset函数的使用进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • C++数组指针和二维数组详情

    C++数组指针和二维数组详情

    这篇文章主要介绍了C++数组指针和二维数组,指针数组和二维数组在应用中常用于函数传参,下面我们就来看看指针数组和二维数组在应用中的具体使用吧,需要的朋友可以参考一下
    2021-10-10
  • C++入门到精通之循环语句的使用教程

    C++入门到精通之循环语句的使用教程

    这篇文章主要给大家介绍了关于C++中循环语句的用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05

最新评论