1. 程式人生 > >加快scanf、printf輸入輸出速度的小技巧

加快scanf、printf輸入輸出速度的小技巧

setvbuf(stdin, calloc(1 << 20, sizeof(char)), _IOFBF, 1 << 20);
setvbuf(stdout, calloc(1 << 20, sizeof(char)), _IOFBF, 1 << 20);

在資料量比較大的情況下,插入上面兩行程式碼就可以大大加快輸入輸出速度。它擴大了stdin、stdout緩衝區大小,使之擴容到了1MB。在同樣大小的資料量下,減少了程式重新整理緩衝區的操作次數。