读入与输出的优化

今天我就算是死从这里跳下去,也不用优化io 艾玛,快读真好用
对于快读跟优化输出,一直都是比较玄学的,大概是我太弱了吧,快读其实用的不多,但是快读是可以起到极大的优化,特别是对于无语的c++流读入而言更是虐菜一般,甚至可以逆转乾坤,从全WA(虫圭)到全AC
废话不多说,快读io其实就是模拟字符的处理,以此来加速读入与输出
代码直接给上,具体在代码中解释

#include
 read(void){
 char ch=0;
 int f=0,h=1;                       //h为正负标识,1为正,-1为负
 while((ch=getchar()) && !isspace(ch))   //不读取空白
 if(ch=='-') h=-1;
 else        f=f*10+ch-'0';
 return h*f;
}
void write(int i){
 if(i<0) putchar('-'),i=-i;        //先判断是否为负数,是的话要转正
 if(i>9) write(i/10);               //递归倒序输出
 putchar(i%10+'0');            
}
int main(){
//测试程序
while(1){
 int i=read();
 write(i);putchar('\n');
}
return 0;
}

ps: 本文写之前参考了其他博主的文章,此处也给出链接,感谢大佬的文章:
大佬快读博客

你可能感兴趣的:(读入与输出的优化)