快速输入输出类(C++)

本文介绍了一种使用getchar()和putchar()实现的快速输入输出方法,并将其封装为类,以提高输入输出效率。然而,qout在处理浮点数时存在精度问题,作者鼓励读者在评论区提出解决方案,提供奖励。文章提供了类的使用示例,并强调了精度控制的重要性。
摘要由CSDN通过智能技术生成

        我们知道,cin/cout是很慢的,所以我们经常scanf/printf。但是如果要求更严格一些,速度要更快,该怎么办呢?有一种解决办法,那就是——快速输入输出。

        快速输入输出采用getchar()和putchar()函数,用了数字累加的方法输入/输出数。

        我们也可以把快速输入输出定义成类,就像cin/cout一样。

代码如下:

//qio.h
#ifndef MY_QIO_H
#define MY_QIO_H
#include<cstdio>
#include<cmath>
#define E_MINUS(i) pow(0.1,i)
#define E_PLUS(i) pow(10,i);
using std::getchar;
using std::pow;
using std::putchar;
//assistant function(al)s
struct precision_class{
	struct prec_type{
		int prec;
	};
	prec_type operator () (int precision__){
		prec_type ans={precision__};
		return ans;
	}
}precision; 
//qin
class q_istream{
	public:
	q_istream operator >> (int &int_num){
		int_num=0;
		bool is_nag=0;
		for(int i=0;;++i){
			char c=getchar();
			if(c==' '||c=='\t'||c=='\n'||c&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值