template <class T>
inline void read(T &x) {
x = 0;
bool f = false;
char c = getchar();
for (; c < '0' || c > '9'; c = getchar()) f |= (c == '-');
for (; c >= '0' && c <= '9'; c = getchar()) x = (x << 1) + (x << 3) + (c & 15);
if (f) {
x = -x;
}
}
显然正常的快读是这样的,那如果我们要读入最后一个数,然后这个数后面已经没有任何字符了,那 getchar() 就会返回 EOF,那问题来了,char 可以存储 EOF 吗,而且 EOF 好像根据系统不同不一定是 −1 啊,那这样快读还安全吗。/kel