我參與了一些編程競賽,並且在很多問題中需要從輸入文件中讀取字符串。顯然,在這些比賽中表現是一個大問題,字符串可能很大,所以我想了解最有效的方式來閱讀這些字符串。有沒有比getchar()(C/C++)更快地讀取字符串的方法?
我的猜測是用char(char)讀取字符串char是最快的。這是因爲即使使用其他函數,比如fgets()或getline(),那些函數仍然需要讀取每個字符。
更新:我知道I/O不會成爲大多數算法問題的瓶頸。這就是說,我仍然非常想知道什麼是你可以用來讀取字符串的最快方式,如果這會成爲未來任何問題的一個問題。
如何使用良好的舊C++流? –
編程競賽問題的設計方式,I/O不會是振振有詞的瓶頸。如果你超時,那是因爲你的實際工作算法不夠聰明。 –
@Kari Knechtel,我同意這一點。這就是說,因爲無論如何我需要閱讀輸入內容,所以我寧願以最有效的方式來做,而不用擔心以後能否改進。 –