快讀快寫 模板

2022-05-25 16:18:07 字數 897 閱讀 6772

#include

#include

#include

using namespace std;        

int read()        

while(isdigit(ch))         

return s * f;        

}        

void write(int x)        

if(x > 9)        

write(x/10);        

putchar(x % 10 + '0');        

return;        

}        

int main()        

一些問題:

太原五中

袁盛琪2023年3月26日

2019.7.7 做乙個補充

template     

void read(t &x)     

while (isdigit(ch))     

x *= f;    

return;    

}   

以上是使用模板template的快速讀入。它可以讀取任何格式的整型資料。

再說明乙個以前留下的小問題:register編譯建議是在每個函式程序中重新定義的,即便是讀入int64範圍的資料,函式變數也最多會迭代20次左右,每次把它定義在暫存器裡其實有些雞肋。

附上使用模板的快寫。

template   

void write(t x)    

if(x > 9)    

write(x/10);    

putchar(x % 10 + '0');    

return;    

}    

C 快讀快寫模板

感謝 eason ac 的指點,快讀 快寫將可以支援任意整型變數的輸入與輸出。由於快讀和快寫需要用到標頭檔案中的getchar 和putchar 函式,所以在 的開頭 入如下 include函式支援變數型別多樣,請在呼叫read 函式時在read與 之間加入 您要讀入的變數型別 例 int a re...

技巧 快讀快寫

inline int read 輸入方式 int main template inline void read t x for x 0 isdigit ch ch getchar x x 10 ch 0 if sign x x 輸入方式 int main inline char nc inline ...

C 快讀快寫詳解

define usefasterread 1 define rg register define inl inline define debug printf qwq n define debugd x printf var s is lld x,ll x define debugf x print...