C和C++文本读写速度对比

读到CSDN论坛中有一个关于C和C++文本读写速度的问题,帖子网址为http://bbs.csdn.net/topics/260005411#new_post 。网友测试结果为C语言的执行速度要优于C++,本文对此感到不太相信,于是在自己的电脑上进行了验证。验证平台是笔记本Ubuntu操作系统。g++编译,均采用O3优化等级。测试文本大小为842M。

g++ -O3 test.cpp -o test

C++方式代码如下

#include<fstream>
#include<sstream>
#include<iostream>
#include<string>std::string file_in = "/home/xuehen/project/liblinear/featuresForEachRegion_train_0.txt";int main(int argc,char **argv)
{std::ofstream ofile;std::ifstream ifile;int BuSize=1024*1024*2;int t1=0,t2=0;char* Buffer=new char[BuSize];ifile.open(file_in.c_str(),std::ios::in);ofile.open("Data2.txt",std::ios::out);while(!ifile.eof()){ifile.read(Buffer,BuSize);ofile.write(Buffer,ifile.gcount());}ifile.close();ofile.close();delete []Buffer;return 0;  }
time ./test
real    0m30.055s
user    0m0.019s
sys 0m1.794s

C语言代码如下

#include<fstream>
#include<sstream>
#include<iostream>
#include<string>std::string file_in = "/home/xuehen/project/liblinear/featuresForEachRegion_train_0.txt";int main(int argc,char **argv)
{FILE *fhr=NULL,*fhw=NULL;int BuSize=1024*1024*2,DataSize=0;int t1=0,t2=0;char* Buffer=new char[BuSize];fhr=fopen(file_in.c_str(), "r");fhw=fopen("Data1C.txt","w");while(!feof(fhr)){DataSize=fread(Buffer,sizeof(char),BuSize,fhr);fwrite(Buffer,sizeof(char),DataSize,fhw);}fclose(fhr);fclose(fhw);delete []Buffer;return 0;
}
time ./test
real    0m32.718s
user    0m0.008s
sys 0m1.938s

从两次结果看C和C++的执行效率基本一致。

C和C++文本读写速度对比相关推荐

  1. lua自动化脚本关于文本读写和特殊不可见字符转换的处理

    lua自动化脚本关于文本读写和特殊不可见字符转换的处理 因为lua在读写文本中可能还会碰到一些比较变态的不可见字符,%s," "这些转换不了,所以需要做特殊的处理. 参考菜鸟教程的 ...

  2. python格式化读取文件_python文本读写与格式化

    作为一个IC攻城狮,除了Verilog,还需要使用python等脚本语言做一些简单的文本处理,提高工作效率,这里记录一下自己常用的文本读写,方便查询. 只做简单说明,因为我只用python做一些简单的 ...

  3. 自学编程系列——2 文件路径与文本读写

    文件路径与文本读写 2.1文件路径 2.2读写文件 2.3 shelve模块:常用 2.4 pprint模块:简单数据类型 2.5 项目实战 2.1文件路径 os模块 工作空间 不同系统不同路径格式 ...

  4. raid读写速度对比_RAID5和RAID1的读写速度对比大概是多少

    RAID5和RAID1的读写速度对比大概是多少以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! RAID5和RAID1的读 ...

  5. raid读写速度对比_读写速度对比:两者伯仲之间_三星 840EVO mSATA_固态硬盘评测-中关村在线...

    ■ATTO Disk Benchmark最大读写测试 ATTO Disk Benchmark是一款优秀且免费的磁盘基准测试软件,支持对稳定性/突发性传输速率进行读写测试,适用于常规硬盘.RAID.US ...

  6. 手机闪存速度排行_华为Mate40Pro和小米11闪存哪个强-闪存读写速度对比解析

    华为手机的闪存问题在几年前就有很多用户反应过,与最近新上线的小米11对比,华为Mate40Pro和小米11闪存哪个强?下面就来本文看看详细内容介绍吧! 据悉,华为Mate40 Pro的闪存顺序读取速度 ...

  7. Python3文本读写操作

    打开文本 f=open('路径/文件名', '读写格式', '编码方式', '错误处理方式') 例如: f = open('/Usersiccy/Desktop/PythonCode/test.txt ...

  8. fopen 中 按文本读写与按二进制读写 实例

    参考:http://blog.csdn.net/hinyunsin/article/details/6401854 #include <stdio.h>int main(int argc, ...

  9. python实现文本读写功能

    事情是这样的,最近博主在做一个测量接收机RTK定位精度的实验,在野外采集到的数据是NMEA的GPGGA格式的定位信息,需要将其转换为处理软件需要用到的格式,因此编写了一个小的转换程序,下面详细介绍: ...

  10. raid读写速度对比_RAID5和RAID10读写性能哪个更好些?

    RAID卡一般都可以对RAID 5卷设置不同的写策略:Write Through和Write Back. Write Back的话,写入的时候是先写入数据到缓存,然后计算校验位,数据和校验位分别写入硬 ...

最新文章

  1. 链表问题12——将单链表的每K个节点之间逆序(方法二)
  2. 谈谈UIView的几个layout方法-layoutSubviews、layoutIfNeeded、
  3. 机器学习常用的算法整理:线性回归、逻辑回归、贝叶斯分类、支持向量机、K-means聚类、决策树、随机森林以及常用的应用场景整理
  4. 魅族16T刚发布就被锤!德国莱茵TÜV:它没通过我的认证
  5. 【elasticsearch】 document 查询原理
  6. 20211010 PHP笔记
  7. 深入浅出JS的对象属性
  8. 什么是Thymeleaf?
  9. 2、RH850外设时钟选择及配置
  10. 文本信息过滤中的变体词识别(一)
  11. 苹果生产日期对照表2020_AirPods Pro 出现静电噪音,如何参与苹果免费维修服务计划?...
  12. 迅雷xware android,迅雷固件Xware
  13. 北京航空航天大学计算机学院保研率,北京航空航天大学计算机学院(专业学位)计算机技术保研夏令营...
  14. 求最长递增子序列个数——C++
  15. 塔望3W消费战略全案丨阳澄湖牌大闸蟹:承诺就是价值,打响官方第一枪
  16. Unity3d中的走路动画
  17. Spring、Struts2+Spring+Hibernate整合步骤
  18. Android 输入法框架流程整理
  19. 网文如何偷走了我的时间?
  20. CHIL-ORACLE-修改

热门文章

  1. python+request 哔哩哔哩视频下载
  2. 中国医科大学2021年9月《社区护理学》作业考核试题
  3. Linux服务器间如何进行文件同步
  4. LCD液晶显示屏颜色显示波长研究与总结?
  5. 分类流控qdisc之htb
  6. 说说互联网公司中产品经理的几个指标
  7. doctype 怪异模式和标准模式
  8. android不root截图,某安卓手机无需root就可以被任意应用截屏及解决方案
  9. 制作Excel图表背景
  10. pycharm复制代码出现空格