c語言 常見字串操作函式

2021-08-27 11:49:52 字數 3171 閱讀 3840

函式名: strcpy

功 能: 將引數src字串拷貝至引數dest所指的位址

用 法: char *strcpy(char *dest, const

char *src);

返回值: 返回引數dest的字串起始位址

說 明: 如果引數dest所指的記憶體空間不夠大,可能會造成緩衝溢位的錯誤情況,在編寫程式時需特別留意,或者用strncpy()來取代;

程式例:

#include

#include

int main(void)

函式名: strncpy

功 能: 將字串src前n個字元拷貝到字串dest

用 法: char *strncpy(char *dest, const

char *src, size_t n);

返回值: 返回引數dest的字串起始位址

說 明: 不像strcpy(),strncpy()不會向dest追加結束標記'\0';

src和dest所指的記憶體區域不能重疊,且dest必須有足夠的空間放置n個字元;

程式例:

#include

#include

int main(void)

函式名: strcat

功 能: 字串拼接函式

用 法: char *strcat(char *dest, const

char *src);

返回值: 返回dest字串起始位址

說 明: strcat() 會將引數src字串複製到引數dest所指的字串尾部;

dest最後的結束字元'\0'會被覆蓋掉,並在連線後的字串的尾部再增加乙個'\0';

dest與src所指的記憶體空間不能重疊,且dest要有足夠的空間來容納要複製的字串;

程式例:

#include

#include

int main(void)

函式名: strncat

功 能: 將n個字元追加到字串的結尾

用 法: char *strncat(char *dest, const

char *src, size_t n);

返回值: 返回dest字串起始位址

說 明: strncat()將會從字串src的開頭拷貝n個字元到dest字串尾部,dest要有足夠的空間來容納要拷貝的字串;

如果n大於字串src的長度,那麼僅將src全部追加到dest的尾部;

strncat()會將dest字串最後的'\0'覆蓋掉,字元追加完成後,再追加'\0';

程式例:

#include

#include

int main()

函式名: strchr

功 能: 在乙個字串中查詢給定字元的第乙個匹配之處

用 法: char *strchr(const

char *str, int c);

返回值: 如果找到指定的字元則返回該字元所在位址,否則返回null

說 明: 返回的位址是字串在記憶體中隨機分配的位址再加上你所搜尋的字元在字串的位置;

字串str的結束標誌『\0』也會被納入檢索範圍,所以str的最後乙個字元也可以被定位;

如果希望查詢某字元在字串中最後一次出現的位置,可以使用 strrchr() 函式;

程式例:

#include

#include

int main()

函式名: strcmp

功 能: 字串比較

用 法: int

strcmp(const

char *s1, const

char *s2);

返回值: 根據ascii碼比較,若引數s1和s2字串相同則返回0,s1若大於s2則返回大於0的值,s1若小於s2則返回小於0的值

說 明: 它是區分大小寫比較的,如果希望不區分大小寫進行字串比較,可以使用stricmp函式

程式例:

#include

#include

int main(void)

函式名: strlen

功 能: 計算指定的字串s的長度,不包括結束字元'\0'

用 法: size_t strlen(const

char *s);

返回值: 返回字串s的字元數

說 明: strlen() 函式計算的是字串的實際長度,遇到第乙個'\0'結束;

如果你只定義沒有給它賦初值,這個結果是不定的,它會從首位址一直找下去,直到遇到'\0'停止;

sizeof返回的是變數宣告後所佔的記憶體數,不是實際長度,此外sizeof不是函式,僅僅是乙個操作符,strlen()是函式;

程式例:

#include

#include

int main()

函式名: strtok

功 能: 根據分界符將字串分割成乙個個片段

用 法: char *strtok(char *s, const

char *delim);

返回值: 返回下乙個分割後的字串指標,如果已無從分割則返回null

說 明: 當strtok()在引數s的字串中發現到引數delim的分割字元時則會將該字元改為'\0'字元;

在第一次呼叫時,strtok()必須賦予引數s字串,往後的呼叫則將引數s設定成null;

程式例:

#include

#include

int main()

函式名: strstr

功 能: 檢索子串在字串中首次出現的位置

用 法: char *strstr( char *str, char * substr );

返回值: 返回字串str中第一次出現子串substr的位址;如果沒有檢索到子串,則返回null

程式例:

#include

#include

int main()

C語言常見字串操作

1 獲取字串長度 標頭檔案 include 函式的定義 size t strlen const char s 函式功能 測字元指標s指向的字串中字元的個數,不包括 0 返回值 字串中字元個數 int main int argc,char ar 執行結果 s1 len 5s1 size 202 字串拷...

C語言字串函式總結(部分常見字串函式)

1.atoi 函式 將字串轉換成整數 標頭檔案 include stdlib.h 定義函式 int atoi const char nptr 函式說明 atoi 會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上數字或正負符號才開始做轉換,而再遇到非數字或字串結束時 0 才結束轉換,並將結果返回。...

python常見字串操作

str hello world print str.upper 把所有字元中的小寫字母轉換成大寫字母 print str.lower 把所有字元中的大寫字母轉換成小寫字母 print str.capitalize 把第乙個字母轉化為大寫字母,其餘小寫 print str.title 把每個單詞的第乙...