C++ 读入优化与输出优化

9人阅读 评论(0) 收藏 举报
分类:

C++ 读入优化与输出优化

正负整数的读入优化:

#include<cctype>
inline int read()
{
    int X=0,w=0; char ch=0;
    while(!isdigit(ch)) w|=ch=='-',ch=getchar();
    while(isdigit(ch)) X=(X<<3)+(X<<1)+(ch^48),ch=getchar();
    return w?-X:X;
}

•isdigit(x) isdigit(x) 表示 x x 是否是 0 ~ 9 的整数 ,是则返回 true true ,不是则是 false false 。
•注意要用 cctype cctype 头文件。

正负实数的读入优化

inline double dbread()
{
    double X=0,Y=1.0; int w=0; char ch=0;
    while(!isdigit(ch)) w|=ch=='-',ch=getchar();
    while(isdigit(ch)) X=X*10+(ch^48),ch=getchar();
    ch=getchar();//读入小数点
    while(isdigit(ch)) X+=(Y/=10)*(ch^48),ch=getchar();
    return w?-X:X;
}

正负整数的输出优化:

void write(int x){
    int y=10,len=1;
    while(y<=x) y*=10,len++;
    while(len--){y/=10,putchar(x/y+48),x%=y;
}
查看评论

C++读入输出优化

C++的读入优化是基于scanf函数读入int是比较慢的现实(但比cin要快好多好多,在很多情况下是最佳选择),这个比较慢是与读入字符比较。在一些输入数据很大的题中使用读入优化效果会很棒,有时可能让一...
  • qq_25978793
  • qq_25978793
  • 2015-09-18 15:41:26
  • 4445

C++ 读入优化与输出优化 模板

简介 C++ 是一种神奇的编程语言…… 自然,读入和输出也有着许多种形式: 如:scanf(),cin>>,cout,cout...
  • liyizhixl
  • liyizhixl
  • 2017-01-13 22:23:37
  • 9123

【黑科技】C++输入输出优化技巧

今天下午经过试验(GUOAK,EGG,TYX,WEATAO等人围观),得出以下输入输出优化结论; 对于一个文件里有10000000个数字,大小约为38M的文本文件; 输入测试: 1、用scanf()...
  • cnyali
  • cnyali
  • 2016-10-07 16:44:14
  • 2844

读入优化&输出优化

注意了注意了注意了,重要的事情说3遍,这个东西是骗分神器,骗分神器,骗分神器!!! 众所周知:scanf比cin快得多,printf比cout快得多,如果你不知道就……就现在知道了 那有没有更快的...
  • C20190102
  • C20190102
  • 2017-04-08 18:42:22
  • 2610

【原创】整数读入优化 C++

一、背景 这是某道题目的状态: 我的代码: 大牛的代码: 我瞬间萌币了! 我有这么慢?Are you kidding me? 点进去一看: void Read(int & p) {...
  • c20182030
  • c20182030
  • 2017-04-07 14:10:26
  • 913

c语言输入输出优化

当输入输出数据量很大时,应尽量用scanf和printf函数。如果时间效率还不够高,应逐字符输入输出,就像下面的readint和writeint函数。#include //为了使用isdigit宏 i...
  • luckyrass
  • luckyrass
  • 2015-12-08 20:38:37
  • 1660

更快的读入优化fread

更快的读入优化fread。
  • zzkksunboy
  • zzkksunboy
  • 2017-05-26 08:48:11
  • 3149

C++读入优化模板

C++读入优化
  • huangjingyuan107
  • huangjingyuan107
  • 2016-08-26 10:58:27
  • 609

C++ 读入优化 fread()版本

C++读入优化,使用fread()函数直接读入整个文件,速度超过getchar()。
  • qq_33330876
  • qq_33330876
  • 2017-03-30 15:54:03
  • 3164
    个人资料
    持之以恒
    等级:
    访问量: 1万+
    积分: 487
    排名: 9万+
    文章存档