作者snowanimal (依然动物先生)
看板Programming
标题Re: [C++] 浮点数写入档案出现奇怪的数字
时间Wed Nov 21 15:19:14 2007
※ 引述《Uihc (我 有我的倔强...)》之铭言:
: 求助版上的前辈们~~~
: 我有一个文字档,一行有8个指数浮点数,整个档案有很多行这样的数字,而且每一行
: 的前方有10个空格。
: 5.868966e+001 7.524138e+001 9.889655e+001 4.682759e+001 8.820690e+001
: 1.214828e+002 1.634138e+002 8.200000e+001
: (注:因BBS排版所以跨行了,在档案中是同一行)
: 我要做的是把从 1.txt 读进来後,转成一般浮点数格式後,再写到 2.txt 去
: 而且要变成如以下的排列方式
: 58.6897
: 75.2414
中间恕删...因为我只学过 fortran 所以我用fortran去跑一下
program PTTest
real h(8)
integer i
open (31,file='test',form='formatted')
read (31,*) (h(i),i=1,8)
do i=1,8
write (*,99) h(i)
enddo
close (31)
99 format (8f12.8)
stop
end
读出来的格式就会变成
58.68965912
75.24137878
98.89655304
46.82759094
88.20690155
121.48280334
163.41380310
82.00000000
我看了一下C++的程式 应该是数字格式判定所以出问题
说不定设定free format自己去抓就好了
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 192.83.177.177