1.對雙向鏈表的具體操作如下: 2.字元串相關 內核中經常會有字元串轉換的需要, 其介面如下: 示例: 3.另外字元串本身的操作介面如下: 文章來源http://blog.sina.com.cn/s/blog_b2aa4e080102xw25.html ...
1.對雙向鏈表的具體操作如下:
- list_add ———向鏈表添加一個條目
- list_add_tail ———添加一個條目到鏈表尾部
- __list_del_entry ———從鏈表中刪除相應的條目
- list_replace———用新條目替換舊條目
- list_del_init———從鏈表中刪除條目後重新初始化
- list_move———從一個鏈表中刪除並加入為另一個鏈表的頭部
- list_move_tail———從一個列表中刪除並加入為另一個鏈表的尾部
- list_is_last———測試是否為鏈表的最後一個條目
- list_empty———測試鏈表是否為空
- list_empty_careful———測試鏈表是否為空並沒有被修改
- list_rotate_left———向左轉動鏈表
- list_is_singular———測試鏈表是否只有一個條目
- list_cut_position———將鏈表一分為二
- list_splice———將兩個鏈表進行合併
- list_splice_tail———將兩個鏈表進行合併為一個鏈表
- list_splice_init———將兩個鏈表進行合併為一個鏈表並初始化為空表
- list_splice_tail_init———將兩個鏈表進行合併為一個鏈表(從尾部合併)並初始化為空表
- list_entry———獲取條目的結構,實現對container_of 的封裝
- list_first_entry———獲取鏈表的第一個元素
- list_first_entry_or_null———獲取鏈表的第一個元素
- list_for_each———遍歷鏈表
- list_for_each_prev———反向遍歷鏈表
- list_for_each_safe———遍歷鏈表並刪除鏈表中相應的條目
- list_for_each_prev_safe———反向遍歷鏈表並刪除鏈表中相應的條目
- list_for_each_entry———遍歷指定類型的鏈表
- list_for_each_entry_reverse———反向遍歷指定類型的鏈表
- list_prepare_entry———準備一個用於list_for_each_entry_continue 的條目
- list_for_each_entry_continue———從指定點開始繼續遍歷指定類型的鏈表
- list_for_each_entry_continue_reverse———從指定點開始反向遍歷鏈表
- list_for_each_entry_from———從當前點遍歷指定類型的鏈表
- list_for_each_entry_safe———反向遍歷指定類型的鏈表並刪除鏈表中相應的條目
- list_for_each_entry_safe_continue———繼續遍歷鏈表並刪除鏈表中相應的條目
- list_for_each_entry_safe_from———從當前點遍歷鏈表並刪除鏈表中相應的條目
- list_for_each_entry_safe_reverse———反向遍歷鏈表並刪除鏈表中相應的條目
- list_safe_reset_next———獲得下一個指定類型的條目
- hlist_for_each_entry———遍歷指定類型的單指針表頭鏈表
- hlist_for_each_entry_continue———從當前點繼續遍歷單指針表頭鏈表
- hlist_for_each_entry_from———從當前點繼續遍歷單指針表頭鏈表
- hlist_for_each_entry_safe———遍歷指定類型的單指針表頭鏈表並刪除鏈表中相應的條目
2.字元串相關
內核中經常會有字元串轉換的需要, 其介面如下:
- simple_strtoull———變換一個字元串為無符號的long long 型
- simple_strtoul———變換一個字元串為無符號的long 型
- simple_strtol———變換一個字元串為有符號的long 型
- simple_strtoll———變換一個字元串為有符號的long long 型
- vsnprintf———格式化一個字元串並放入緩衝區
- vscnprintf———格式化一個字元串並放入緩衝區
- snprintf———格式化一個字元串並放入緩衝區
- scnprintf———格式化一個字元串並放入緩衝區
- vsprintf———格式化一個字元串並放入緩衝區
- sprintf———格式化一個字元串並放入緩衝區
- vbin_printf———解析格式化字元串並將二進位值放入緩衝區
- bstr_printf———對二進位參數進行格式化字元串操作並放入緩衝區
- bprintf———解析格式化字元串並將二進位值放入緩衝區
- vsscanf———從格式化字元串中分離出的參數列表
- sscanf———從格式化字元串中分離出的參數列表
- kstrtol———變換一個字元串為long 型
- kstrtoul———變換一個字元串為無符號的long 型
- kstrtoull———變換一個字元串為無符號的long long 型
- kstrtoll———變換一個字元串為long long 型
- kstrtouint———變換一個字元串為無符號的int 型
- kstrtoint———變換一個字元串為int 型
示例:
char buf[]="115200"; unsigned int rate; kstrtouint(buf,0,&rate); //buf:輸入字元串,0:自動識別,也可以是10(10進位)或16(16進位),rate:存放轉換後的整形值. //當沒有錯誤時返回值是0;
3.另外字元串本身的操作介面如下:
- strnicmp———長度有限的字元串比較,這裡不分大小寫
- strcpy———複製一個以NULL 結尾的字元串
- strncpy———複製一個以NULL 結尾的有限長度字元串
- strlcpy———複製一個以NULL 結尾的有限長度字元串到緩衝區中
- strcat———在字元串後附加以NULL 結尾的字元串
- strncat———在字元串後附加以NULL 結尾的一定長度的字元串
- strlcat———在字元串後附加以NULL 結尾的一定長度的字元串
- strcmp———比較兩個字元串
- strncmp———比較兩個限定長度的字元串
- strchr———在字元串中查找第一個出現指定字元的位置
- strrchr———在字元串中查找最後出現指定字元的位置
- strnchr———在字元串中查找出現指定字元串的位置
- skip_spaces———從字元串中移除前置空格
- strim———從字元串中移除前置及後置的空格
- strlen———獲得字元串的長度
- strnlen———獲得一個有限長度字元串的長度
- strspn———計算一個僅包含可接受字母集合的字元串的長度
- strcspn———計算一個不包含指定字母集合的字元串的長度
- strpbrk———找到字元集合在字元串第一次出現的位置
- strsep———分割字元串
- sysfs_streq———字元串比較,用於sysfs
- strtobool———用戶輸入轉換成布爾值
- memset———記憶體填充
- memcpy———記憶體複製
- memmove———記憶體複製
- memcmp———記憶體比較
- memscan———在記憶體中找指定的字元
- strstr———在一個以NULL 結尾的字元串中找到第一個子串
- strnstr———在一個限定長度字元串中找到第一個子串
- memchr———找到記憶體中的字元
- memchr_inv———找到記憶體中的不匹配字元
文章來源http://blog.sina.com.cn/s/blog_b2aa4e080102xw25.html