码迷,mamicode.com
首页 > 其他好文 > 详细

fread读入挂 gets getchar 整数

时间:2017-10-31 17:33:56      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:blog   logs   quick   class   +=   str   temp   color   opera   

const int buffer_max_size=100000;
struct quick_in{
    char buf[buffer_max_size];
    char *ps;char *pe;
    quick_in(){
        ps=buf;pe=buf+1;
    }
    inline void innext(){
        if(++ps==pe)
            pe=(ps=buf)+fread(buf,sizeof(char),sizeof(buf)/sizeof(char),stdin);
    }
    template <class T>
    inline bool operator()(T &n){
        n=0;
        T f=1;
        if(ps==pe)return false;//EOF
        do{
            innext();if(*ps== )f=-1;
        }
        while(ps!=pe&&!isdigit(*ps));
        if(ps==pe)return false;//EOF
        do{
            n=(n<<1)+(n<<3)+*ps-48;
            innext();
        }
        while(ps!=pe&&isdigit(*ps));n*=f;
        return true;
    }
    inline char getchar(){
        while(ps!=pe&&isspace(*ps))innext();
        char c=*ps;innext();return c;
    }
    inline bool isenter(char c){return c==\n;}
    void gets(char *s){
        while(ps!=pe&&isspace(*ps)) innext();
        while(ps!=pe&&!isenter(*ps)){
            *s++=*ps;innext();
        }
        *s=0;
    }
};

quick_in in;

 

fread读入挂 gets getchar 整数

标签:blog   logs   quick   class   +=   str   temp   color   opera   

原文地址:http://www.cnblogs.com/MeowMeowMeow/p/7762452.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!