C和C++文本读写速度对比
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++文本读写速度对比相关推荐
- lua自动化脚本关于文本读写和特殊不可见字符转换的处理
lua自动化脚本关于文本读写和特殊不可见字符转换的处理 因为lua在读写文本中可能还会碰到一些比较变态的不可见字符,%s," "这些转换不了,所以需要做特殊的处理. 参考菜鸟教程的 ...
- python格式化读取文件_python文本读写与格式化
作为一个IC攻城狮,除了Verilog,还需要使用python等脚本语言做一些简单的文本处理,提高工作效率,这里记录一下自己常用的文本读写,方便查询. 只做简单说明,因为我只用python做一些简单的 ...
- 自学编程系列——2 文件路径与文本读写
文件路径与文本读写 2.1文件路径 2.2读写文件 2.3 shelve模块:常用 2.4 pprint模块:简单数据类型 2.5 项目实战 2.1文件路径 os模块 工作空间 不同系统不同路径格式 ...
- raid读写速度对比_RAID5和RAID1的读写速度对比大概是多少
RAID5和RAID1的读写速度对比大概是多少以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! RAID5和RAID1的读 ...
- raid读写速度对比_读写速度对比:两者伯仲之间_三星 840EVO mSATA_固态硬盘评测-中关村在线...
■ATTO Disk Benchmark最大读写测试 ATTO Disk Benchmark是一款优秀且免费的磁盘基准测试软件,支持对稳定性/突发性传输速率进行读写测试,适用于常规硬盘.RAID.US ...
- 手机闪存速度排行_华为Mate40Pro和小米11闪存哪个强-闪存读写速度对比解析
华为手机的闪存问题在几年前就有很多用户反应过,与最近新上线的小米11对比,华为Mate40Pro和小米11闪存哪个强?下面就来本文看看详细内容介绍吧! 据悉,华为Mate40 Pro的闪存顺序读取速度 ...
- Python3文本读写操作
打开文本 f=open('路径/文件名', '读写格式', '编码方式', '错误处理方式') 例如: f = open('/Usersiccy/Desktop/PythonCode/test.txt ...
- fopen 中 按文本读写与按二进制读写 实例
参考:http://blog.csdn.net/hinyunsin/article/details/6401854 #include <stdio.h>int main(int argc, ...
- python实现文本读写功能
事情是这样的,最近博主在做一个测量接收机RTK定位精度的实验,在野外采集到的数据是NMEA的GPGGA格式的定位信息,需要将其转换为处理软件需要用到的格式,因此编写了一个小的转换程序,下面详细介绍: ...
- raid读写速度对比_RAID5和RAID10读写性能哪个更好些?
RAID卡一般都可以对RAID 5卷设置不同的写策略:Write Through和Write Back. Write Back的话,写入的时候是先写入数据到缓存,然后计算校验位,数据和校验位分别写入硬 ...
最新文章
- 链表问题12——将单链表的每K个节点之间逆序(方法二)
- 谈谈UIView的几个layout方法-layoutSubviews、layoutIfNeeded、
- 机器学习常用的算法整理:线性回归、逻辑回归、贝叶斯分类、支持向量机、K-means聚类、决策树、随机森林以及常用的应用场景整理
- 魅族16T刚发布就被锤!德国莱茵TÜV:它没通过我的认证
- 【elasticsearch】 document 查询原理
- 20211010 PHP笔记
- 深入浅出JS的对象属性
- 什么是Thymeleaf?
- 2、RH850外设时钟选择及配置
- 文本信息过滤中的变体词识别(一)
- 苹果生产日期对照表2020_AirPods Pro 出现静电噪音,如何参与苹果免费维修服务计划?...
- 迅雷xware android,迅雷固件Xware
- 北京航空航天大学计算机学院保研率,北京航空航天大学计算机学院(专业学位)计算机技术保研夏令营...
- 求最长递增子序列个数——C++
- 塔望3W消费战略全案丨阳澄湖牌大闸蟹:承诺就是价值,打响官方第一枪
- Unity3d中的走路动画
- Spring、Struts2+Spring+Hibernate整合步骤
- Android 输入法框架流程整理
- 网文如何偷走了我的时间?
- CHIL-ORACLE-修改