盤點分析C語言中少見卻強大的字串函數
2022-02-14 13:00:34
正片開始
字串函數
首先神魔是字串函數?
指的是程式語言中用來進行字串處理的函數,如C,pascal,Visual以及LotusScript中進行字串拷貝,計算長度,字元查詢等的函數。 功能:把src所指由NUL結束的字串複製到dest所指的 陣列 中。 返回指向dest結尾處字元 (NUL)的 指標 。
像之前我寫到過的 strcpy,strcat,strcmp 這些函數都屬於長度不受限的字串函數,由此就有下面兩種分類
1.長度不受限的字串函數
2.長度受限的字串函數
長度不受限就是以‘ ’為函數結束標準的判定,當物件沒給定 ’ '時,就跑不出結果或者報錯;相反則為長度受限。我再整理一下,好做個對比:
strcpy
字串拷貝,把指向的字串複製到目標字串,宣告為
char *strcpy(char *dest, const char *src)
strcat
字串連續,把指向的字串追加到目標字串的結尾(無間隔),宣告為:
char *strcat(char *dest, const char *src)
strcmp
把所指向的字串和目標字串進行比較, 返回值大小決定二者的相對大小,宣告如下:
int strcmp(const char *str1, const char *str2)
以上三種是函數的長度受限,我們可以變 strncpy,strncat 和 strncmp,就是長度不受限函數了,相比多了一個 n ,這個 n 是指函數作用範圍最多在前 n 個位元組,比如 strncmp 中的n 就是要比較的最大字元數,就相當於一個限制機制了。
這裡主要補充幾個比較實用的吧:
strstr
其實顧名思義,翻譯過來就是“字串字串”,其實作用就是在一個字串裡面找我的目標字串,不包含終止符 ‘