1
我已經搜索了很多以瞭解scanf和printf是如何工作的。 但沒有找到任何合適的答案。 請幫幫我。 我們說,當我們寫printf和scanf如何工作?
scanf("%d", i); // int i
電腦如何來知道該值已經從鍵盤輸入的? 以及printf如何打印數據或輸出到屏幕?
請幫我
我已經搜索了很多以瞭解scanf和printf是如何工作的。 但沒有找到任何合適的答案。 請幫幫我。 我們說,當我們寫printf和scanf如何工作?
scanf("%d", i); // int i
電腦如何來知道該值已經從鍵盤輸入的? 以及printf如何打印數據或輸出到屏幕?
請幫我
他們使用該系統原語read
和write
。你可以在這裏看到更多關於它們的地方http://comsci.liu.edu/~murali/unix/read.htm和http://codewiki.wikidot.com/c:system-calls:write,分別從stdin(文件desc = 0)和stdout(文件desc = 1)中讀取。
在這裏回答這個問題是不可能的。你可以在這個主題上做一兩次完整的講座。下載Linux和glib源代碼,並看看如何實現printf(3)和scanf(3)。 (如果linux不是你的想法,選擇你的味道,* bsd,達爾文,不管) – 2012-01-04 09:04:26
你是指那個級別?如果你想知道它在機器級別上的工作原理,這取決於你正在使用的操作系統。 – Muepe 2012-01-04 09:06:26
這看起來像[這個問題]一樣的東西(http://stackoverflow.com/q/1253132/151344) – Alderath 2012-01-04 09:08:18