首先,讀入優化只是針對整數,getchar讀字元是非常快,所以我們就用getchar。
getchar每次只能讀一位,所以,每當讀了一位時x*=10,為這一位「留位置」。
舉個例子:現在讀入了123,x為123,再讀入了乙個4,x*=10,變為了1230,現在它的最後一位空出來了,正好留給4,x+=4,x就變為了1234,當然,這裡的』4』是char型別,需要減去』0』才是4,即:x=x*10+s-『0』(s為當前輸入的字元
很多時候是有多餘空格或者其他的亂碼字元輸入,為了防止bug,我們要嚴謹
**1
void
read
(int
&x)//'&'表示引用,也就是說x是乙個實參,在函式中改變了x的值就意味著在外面x的值也會被改變
while
(s>=
'0'&&s<=
'9')
//是字元(一旦不是字元就意味著輸入結束了)
x*=f;//改變正負
}
**2void
read
(int
&x)while
(s>=
'0'&&s<=
'9')
x*=f;}
**3#define num ch-'0'
void
get(
int&res)
讀入優化和輸出優化
前兩天做牛客的題 才知道有這麼個玩意。果然還是太菜 大佬們打比賽是去切題 我是去認識新名詞。題目也很直白 說了 讀入檔案較大,請使用讀入優化,本機除錯時請使用檔案輸入輸出而且題目 也給出了優化寫法 可以直接用 非常良心 inline int read while c 0 c 9 x x 10 c 0...
C 讀入輸出優化 附模板(全)
ios sync with stdio false 注意 在使用後進行io操作時不能同時使用cin 與scanf。另外可以進一步加快執行效率。ios sync with stdio false cin.tie 0 int read while ch 0 ch 9 return x w int wri...
讀入優化 輸出優化 C 詳解
讀入優化 輸出優化 c 詳解 本文主要介紹了c 讀入和輸出的一些性質和優化 希望對讀者有所幫助 大家對這個應該很熟悉了吧?想必最開始接觸 oi 的時候大家寫的輸入輸出就是用的這個吧。其實你做多了題目就會發現這個 cin 和 cout 是非常慢的,因為它從緩衝區中讀入資料。而這個緩衝常常是同步的,因為...