欧美一区二区三区四区视频|久久久久久88色偷偷|国产精品视频一区二区三区w|国产综合色在线视频|久久久久久综合七次郎|好硬好紧好湿进去了好爽

合肥做網(wǎng)站,選擇瘋狗科技,專(zhuān)業(yè)、敬業(yè)的合肥網(wǎng)絡(luò )公司
首頁(yè) > 網(wǎng)站技術(shù) > 詳情

C語(yǔ)言字符串處理函數

2017-12-25 16:14:03   來(lái)源:互聯(lián)網(wǎng)   瀏覽:  次
C語(yǔ)言具有繪圖能力強,可移植性,并具備很強的數據處理能力。那么大家知道C語(yǔ)言字符串處理函數是什么呢?下面一起來(lái)看看!

C語(yǔ)言具有繪圖能力強,可移植性,并具備很強的數據處理能力。那么大家知道C語(yǔ)言字符串處理函數是什么呢?下面一起來(lái)看看!

C語(yǔ)言提供了豐富的字符串處理函數,例如字符串的輸入、輸出、合并、修改、比較、轉換、復制、搜索等,使用這些現成的函數可大大減輕編程的負擔。

用于輸入輸出的字符串函數,例如printf、puts、scanf、gets等,使用時(shí)應包含頭文件stdio.h,使用其它字符串函數則應包含頭文件string.h。

字符串長(cháng)度函數strlen

strlen 是 string length 的縮寫(xiě),用來(lái)獲得字符串的長(cháng)度。所謂長(cháng)度,就是包含多少個(gè)字符(不包括字符串結束標志 '\0‘)。語(yǔ)法格式為:

strlen(arrayName);

strlen 將返回字符串的長(cháng)度,它是一個(gè)整數。請看下面的例子:

#include #include int main(){ char str[]=“C language”; int len = strlen(str); printf(“The lenth of the string is %d ”, len); return 0;}

運行結果:

The lenth of the string is 10

需要說(shuō)明的是,strlen 會(huì )從字符串的第 0 個(gè)字符開(kāi)始計算,直到遇到字符串結束標志 '\0’。將上面代碼中的 str 改為:

char str[]=“C \0language”;

那么輸出結果就是:

The lenth of the string is 2

字符串連接函數 strcat

strcat 是 string catenate 的縮寫(xiě),意思是把兩個(gè)字符串拼接在一起,語(yǔ)法格式為:

strcat(arrayName1, arrayName2);

arrayName1、arrayName2 為需要拼接的字符串。

strcat 將把 arrayName2 連接到 arrayName1 后面,并刪去 arrayName1 最后的結束標志 '\0‘。這就意味著(zhù),arrayName1 的長(cháng)度要足夠,必須能夠同時(shí)容納 arrayName1 和 arrayName2,否則會(huì )越界。

strcat 返回值為 arrayName1 的首地址。請看下面的例子:

#include #include int main(){ char str1[40]=“My name is ”; char str2[20]; printf(“Input your name:”); gets(str2); strcat(str1,str2); puts(str1); return 0;}

運行結果:

Input your name:xiao p

My name is xiao p

字符串復制函數strcpy

strcpy 是 string copy 的縮寫(xiě),意思是字符串復制,語(yǔ)法格式為:

strcpy(arrayName1, arrayName2);

strcpy 會(huì )把 arrayName2 中的字符串拷貝到 arrayName1 中,串結束標志 '\0' 也一同拷貝。請看下面的例子:

#include #include int main(){ char str1[15], str2[]=“C Language”; strcpy(str1, str2); puts(str1); printf(“ ”); return 0;}

運行結果:

C Language

strcat 要求 arrayName1 要有足夠的長(cháng)度,否則不能全部裝入所拷貝的字符串。

字符串比較函數strcmp

strcmp 是 string compare 的縮寫(xiě),意思是字符串比較,語(yǔ)法格式為:

strcmp(arrayName1, arrayName2);

arrayName1 和 arrayName2 是需要比較的兩個(gè)字符串。

字符本身沒(méi)有大小之分,strcmp() 以各個(gè)字符對應的 ASCII 碼值進(jìn)行比較。strcmp() 從兩個(gè)字符串的第 0 個(gè)字符開(kāi)始比較,如果它們相等,就繼續比較下一個(gè)字符,直到遇見(jiàn)不同的字符,或者到字符串的末尾。

返回值:若 arrayName1 和 arrayName2 相同,則返回0;若 arrayName1 大于 arrayName2,則返回大于 0 的值;若 arrayName1 小于 arrayName2,則返回小于0 的值。

【示例】對4組字符串進(jìn)行比較。

#include #include int main(){ char *a = “aBcDeF”; char *b = “AbCdEf”; char *c = “aacdef”; char *d = “aBcDeF”; printf(“strcmp(a, b) : %d ”, strcmp(a, b)); printf(“strcmp(a, c) : %d ”, strcmp(a, c)); printf(“strcmp(a, d) : %d ”, strcmp(a, d)); return 0;}

運行結果:

strcmp(a, b) : 1

strcmp(a, c) : -1

strcmp(a, d) : 0

欧美一区二区三区四区视频|久久久久久88色偷偷|国产精品视频一区二区三区w|国产综合色在线视频|久久久久久综合七次郎|好硬好紧好湿进去了好爽