关于vs2010 中c++输出字符串到txt文件中的格式问题

本文探讨如何在C++中实现Fortran的格式化字符串输出,特别是涉及到科学计数法和指数位的控制。通过解析Fortran的Format函数,使用C++的Format()函数进行相应转换,达到输出txt文件的目的。
摘要由CSDN通过智能技术生成

背景说明

最近在研究输出一种文件格式,其实是输出字符串到txt文件,但是该文件格式比较成熟,对各个输出的记录都有确定的格式要求,这些格式让我看的很是头疼,比如Format(80A1),Format(3I10,3E13.5),Format(I10,315,2(1X,20A1))这都是什么和什么。。。
解决这个问题的思路:首先弄明白这些格式的意思,然后在c++中选择相应的函数输出这些格式

Fortran语言的格式化函数Format()

通过将这些格式形式输入到百度,终于搞明白这个格式说明是用Fortran语言规定的格式。
Fortran语言中的Format函数用法:
[n]FC[+][-][width]
字段 含义
n 代表格式控制符的重复次数,默认为1次
FC Format Codes:格式控制符,详细说明见表1-3及例子
+ 在输出的数字前面加“+”前缀符号,仅数字格式化输出有效
- 控制字符串和数字的输出为左对齐,默认输出是右对齐
- width 输出数字或字符的宽度
其中的FC控制符通过查看“星星分享”和“wanwan”同学的新浪微博,搞清楚了。格式不过度说明,在这里贴出星星分享微博中的图片,一目了然。
这里写图片描述
显然,查表得到了Format(80A1)的解释:以1位的位宽输出字符串,输出80个字符
Format(3I10,3E13.5):输出6个数字,其中前三个为10位宽的int型整数,后三个为13位的指数类型的浮点数,小数点后占5个字符。
输出例子为:
2 12 1 0.00000E+00 7.81250E-03 0.00000E+00

C++语言的字符串格式化函数Format()

好了废话不多说,查到了c++中Format()的用法,下面简单针对我的问题总结一下

函数说明

Format是CString类的成员函数,可通过格式操作是任意

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值