回覆列表
-
1 # 李CODER
-
2 # 天語星墜
控制代碼也可以理解為指標,比如你fopen打開了一個檔案,也就獲取到了這檔案的控制代碼,也叫檔案指標。然後你就可以對這個檔案進行操作了,預設是指向檔案第一個字元,但是可以自己設定指標位置。然後呼叫相關方法進行寫入內容或者讀取內容,其實就是指標的移動。最後記得一定要fclose關閉這個檔案控制代碼,如果不關閉,這個控制代碼還存在記憶體中,佔用記憶體不說,下次再開啟還有丟失內容風險。
-
3 # 笨小虎
控制代碼就是系統分配給視窗的編號,就像一個人的身份證號碼樣.系統桌面本身就是一個視窗, 它的控制代碼一般是0, 其他開啟的視窗都是桌面視窗的子視窗
你應該是在學window程式設計的時候遇到的吧。每一個控制代碼,對應著一個windows核心物件,你可以把這個控制代碼看成windows核心的物件的索引,我一說核心物件你可能又不明白了,那咱們具體點,核心物件可以是一個視窗或者一個檔案。
當我們操作windows的核心物件的時候,不能直接直接使用指標,必須要使用控制代碼來操作核心物件。你可能要問了,為啥? 因為控制代碼指向的結構控制著核心物件的生命週期和地址。 比如,控制代碼指向的結構裡面有核心物件的引用計數, 我們都遇到過 “檔案被佔用不能刪除的” 的提示,這個時候即使控制代碼指向結構的裡面的引用計數起了作用。
其實控制代碼的作用我的理解就是定義了windows核心管理的基本資料結構。 比如核心物件的物理地址,只有windows核心才有許可權訪問, 既然原則上是不能暴露出來的,封裝起來就是唯一的選擇了。
另外,其實這些概念,如果之前沒有學過作業系統的相關知識的話,在你的大腦中是非常難以理解的。 因此,建議多看看《深入理解計算機系統》這本書,或者《深入理解windows核心》。把這兩本書看明白了, 這些問題就不是問題了。