回車與換行:
回車\r本義是游標重新回到本行開頭,r的英文是retrun;
換行\n本義是游標往下一行(不一定到下一行行首),n的英文是newline。
在windows下,換行就是另起一行,回車就是回到一行的開頭,所以我們在平時編寫檔案時的回車符確切說是回車換行符(enter鍵),即實現換行需要\r\n;
而在linux下只需要\n就可以做到回車換行。
緩衝區:
fflush()函式:
fflush(stdin)函式是重新整理標準輸入緩衝區,把緩衝區裡的東西丟棄掉;
fflush(stdout)函式是重新整理和清除標準輸出緩衝區,把緩衝區裡的東西列印到標準輸出裝置上。
因為緩衝區裡的東西滿了或者明確了要fflush才會輸出到標準輸出裝置上,並且當程式在遇到sleep後,如果沒有重新整理並且清空輸出緩衝區,程式就會首先睡眠,然後再輸出緩衝區的內容,而且緩衝區的之前的內容也沒有清除。
進度條原理:進度條是用來顯示進度的,在linux環境下,設定乙個字元陣列來儲存輸出的字串;利用\r回車但不換行,使得每次的游標回到最左邊,覆蓋之前的字串,因為沒有\n所以用fflush函式重新整理(stdout強制從輸出緩衝區輸出到螢幕上),最後有乙個顯示程式在執行的乙個旋轉的圖案,定義乙個常指標,用來存放一些字元,然後讓這些字元迴圈輸出,這樣的話,等到程式執行起來時,就可以看到旋轉的字元效果。
進度條的簡單實現
首先重申一下幾個概念 1 回車與換行 回車與換行是不同的概念,但很多人都不太清楚二者之間有何區別。回車是回到當前行的行首,而不會換到下一行,如果接著輸入的話,之前的內容會被沖掉,從頭開始寫入,表示為 r。換行顧名思義是換到換到下一行,但不會回到行首。一般enter鍵代表了回車和換行。2 進度條的原理...
簡單進度條的實現
首先讓我們先來看進度條實現的 include include include int main printf n return 0 其中用了乙個函式usleep,在gcc編譯器中,它包含在標頭檔案unistd.h中,其單位為微秒,sleep單位為毫秒,sleep單位為秒。r 表示回車,表示輸出一行後...
實現簡單的進度條
使用進度條提示程式使用進度。當在布局檔案中新增進度條時,如下 android layout width match parent android layout height wrap content 執行結果如下 我們可以知道,如果不加設定,預設的結果就會這樣。接下來,通過更改style屬性,設定進...