读入输出优化

当读入输出规模过大时,用来读入输出的时间往往占用程序运行的大部分时间,严重影响到程序的效率,这时我们想起字符串输入输出

时putchar和getchar较快,于是将所有输入输出都改为putchar和getchar,然后再转换为所要的类型,这样程序效率就大大提升了,不过

貌似只有用G++提交时才有明显的效果,C++反而比scanf和printf慢。。。

此方法参考某牛的源代码,有错误之处请各位牛们纠正。。。

一下为本人用来输入int类型数据的函数。。。

输出优化小数据时会降速。。。。汗

 

inline int in() { char ch; int a=0; while(!(((ch=getchar())>='0')&&(ch<='9'))); a*=10;a+=ch-'0'; while(((ch=getchar())>='0')&&(ch<='9'))a*=10,a+=ch-'0'; return a; } void out(int a) { if(a>=10)out(a/10); putchar(a%10+'0'); } 

 

你可能感兴趣的:(c,优化)