linuxC程式設計實戰 第六章

2021-07-15 08:21:51 字數 1243 閱讀 6810

函式宣告:int atoi(const char *nptr);

標頭檔案:#include

函式說明:將字串轉換成整數. 例如:atoi("777");

這個函式怎麼這麼好用呢!以前竟然不知道!

exit(0):正常執行程式並退出程式

exit(1):非正常執行程式導致程式退出

return:返回函式,若在非主函式中,則會退出函式並返回乙個值

return是關鍵字;exit()是乙個函式

return是語言級別的,表示了呼叫堆疊的返回;exit是函式呼叫級別的,表示了乙個程序的結束

經常在呼叫linux系統api(裝置程式程式設計介面)時出現一些錯誤.比如open(),creat()之類的函式會返回-1,出現錯誤,呼叫失敗.這時需要知道錯誤u的原因,就用到了errno這個全域性變數(也有人說是巨集定義).

標頭檔案:#include

每次程式呼叫失敗的時候,系統會自動用錯誤**填充errno這個全域性變數,這樣只需要解讀errno這個全域性變數就可以獲得失敗的原因(printf("errno = %d\n", errno);).

然而,errno有一百多個巨集定義,對著編號乙個乙個地查詢太麻煩,所以就可以用strerror來解讀error(strerror(error);).

strerror(error);:通過錯誤的標號,獲得描述錯誤的字串,將單純的錯誤標號轉為字串描述.

函式宣告:void *memset(void *s, int ch, size_t n);

標頭檔案:#include

函式說明:將一段記憶體塊中填充某個給定的值.它是對較大的結構體或陣列進行清0操作的一種最快的方法.

用法如:memset(&lock, 0, sizeof(struct flock));

昨天楊博東學長給我講了軟鏈結和硬鏈結的區別.

簡單來說,軟鏈結和硬鏈結的區別就是:

硬鏈結是有著相同inode號僅檔名不同的檔案,它是通過inode號進行索引檔案的;

軟鏈結類似於windows下的快捷方式,它是通過路徑進行索引檔案的,一旦這個路徑不存在或更改,則這個軟鏈結就會成為死鏈結.

在此鏈結一篇楊博東學長的部落格,以便日後回顧這個知識點.

linux下軟鏈結和硬鏈結的區別

這寫就是我這三天學到的一些雜七雜八的點,這幾天學到的其他知識都比較系統.比如linux的檔案結構 檔案的輸入輸出 檔案的屬性操作 檔案的移動刪除及目錄操作,這些內容回顧的時候可以翻看書上的筆記,就不寫在部落格上了.而這些很雜的點是容易遺忘的,就記錄在這裡作為筆記.

程式設計第六章總結

一 主要內容摘要 1 for語句 for 表示式1 表示式2 表示式3 迴圈體語句 用途 在迴圈頂部進行迴圈條件測試,如果迴圈條件第一次迴圈就為假,則迴圈體一次也不執行,即用於實現當型迴圈控制結構。適用於迴圈次數已知 技術控制的迴圈。例 輸出1 100之間所有偶數 include using nam...

第六章 實戰篇

這一章講的是驅動程式開發步驟,從一開始我們都知道linux的驅動的工作方式是將每乙個驅動都對映成乙個檔案。這些檔案就是驅動檔案,都儲存在 dev目錄下。因此,我們做驅動開發程式,就可以通過與檔案進行互動了。編寫linux驅動程式的步驟應該分為一下幾大步 1 裝載和解除安裝linux驅動 2 註冊和登...

學習筆記 linuxc第六章上

利用chmod函式實現自己簡化版chmod命令時所需要注意的問題 利用chmod 函式實現chmod命令修改乙個檔案許可權時需要輸入其許可權對應的數字。此時輸入的數字是字元型的 即字串 需要把它轉換為八進位制整數。首先我們先把這個字串轉換為十進位制數,可以呼叫atoi函式,然後再把十進位制整數轉換為...