我有一个包含实数的大文件,我需要以最快的方式将它们读成双打。
我可以自己选择文件的格式(1个数字一行,或多个例如)
尝试了scanf
,似乎很慢,尝试了gets(s)
,然后自己解析双打它给出了相同的时间。
有更快的方法吗?
答案 0 :(得分:0)
尝试从原始二进制文件中读取。这是最快的。
示例:如果要为两个数组x
和y
填充1000个值,则二进制文件中的数据应包含插槽0-1000中的x值插槽1000-2000的y值和y值。命令为fread
。不要忘记,对于类型double
,元素的大小为64位= 8字节。