c語(yǔ)言字符串類型函數(shù),c語(yǔ)言字符串函數(shù)有哪些

C語(yǔ)言關(guān)于字符串的操作函數(shù)有哪些

string.h頭文件中包含的字符串函數(shù)

創(chuàng)新互聯(lián)主要從事成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)李滄,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):13518219792

void?*memcpy(void?*dest,?const?void?*src,?size_t?n);//將n字節(jié)長(zhǎng)的內(nèi)容從一個(gè)內(nèi)存地址復(fù)制到另一個(gè)地址;如果兩個(gè)地址存在重疊,則最終行為未定義

void?*memmove(void?*dest,?const?void?*src,?size_t?n);//將n字節(jié)長(zhǎng)的內(nèi)容從一個(gè)內(nèi)存地址復(fù)制到另一個(gè)地址;與memcpy不同的是它可以正確作用于兩個(gè)存在重疊的地址

void?*memchr(const?void?*s,?char?c,?size_t?n);//在從s開始的n個(gè)字節(jié)內(nèi)查找c第一次出現(xiàn)的地址并返回,若未找到則返回NULL

int?memcmp(const?void?*s1,?const?void?*s2,?size_t?n);//對(duì)從兩個(gè)內(nèi)存地址開始的n個(gè)字符進(jìn)行比較

void?*memset(void?*,?int,?size_t);//用某種字節(jié)內(nèi)容覆寫一段內(nèi)存空間

char?*strcat(char?*dest,?const?char?*src);//在字符串dest之后連接上src

char?*strncat(char?*dest,?const?char?*src,?size_t?n);//從src截取n個(gè)字符連接在字符串dest之后,返回dest字符串

char?*strchr(const?char*?str,?int?ch);//從字符串str頭開始查找字符ch首次出現(xiàn)的位置

char?*strrchr(const?char*?str,int?ch);//從字符串str尾開始查找字符ch首次出現(xiàn)的位置

int?strcmp(const?char?*,?const?char?*);//基于字典順序比較兩個(gè)字符串

int?strncmp(const?char?*,?const?char?*,?size_t);//基于字典順序比較兩個(gè)字符串,最多比較n個(gè)字節(jié)

int?strcoll(const?char?*,?const?char?*);//基于當(dāng)前區(qū)域設(shè)置的字符順序比較兩個(gè)字符串

char?*strcpy(char*?str1,?const?char*?str2);//將str2拷貝給str1

char?*strncpy(char*?str1,?const?char*?str2,?size_t?n);//截取str2的n個(gè)字符拷貝給str1

char?*strerror(int);//返回錯(cuò)誤碼對(duì)應(yīng)的解釋字符串,參見errno.h(非線程安全函數(shù))

size_t?strlen(const?char?*);//返回一個(gè)字符串的長(zhǎng)度

size_t?strspn(const?char?*s,?const?char?*strCharSet);//從字符串s的起始處開始,尋找第一個(gè)不出現(xiàn)在strCharSet中的字符,返回其位置索引值。換句話說,返回從字符串s的起始位置的完全由strCharSet中的字符構(gòu)成的子串的最大長(zhǎng)度。strspn為string?span的縮寫。不支持多字節(jié)字符集。

size_t?strcspn(const?char?*s,?const?char?*strCharSet);//從字符串s的起始處開始,尋找第一個(gè)出現(xiàn)在strCharSet中的字符,返回其位置索引值。換句話說,返回從字符串s的起始位置的完全由不屬于strCharSet中的字符構(gòu)成的子串的最大長(zhǎng)度。strcspn為string?complement?span的縮寫。不支持多字節(jié)字符集。

char?*strpbrk(const?char?*s,?const?char?*strCharSet);//在字符串s中查找strCharSet中任意字符第一次出現(xiàn)的位置的指針值。strpbrk為string?pointer?break縮寫。不支持多字節(jié)字符集。

char?*strstr(const?char?*haystack,?const?char?*needle);//在字符串haystack中查找字符串needle第一次出現(xiàn)的位置,heystack的長(zhǎng)度必須長(zhǎng)于needle

char?*strtok(char?*strToken,?const?char?*strDelimit?);//將一個(gè)字符串strToken依據(jù)分界符(delimiter)分隔成一系列字符串。此函數(shù)非線程安全,且不可重入;但MSVC實(shí)現(xiàn)時(shí)使用了thread-local?static?variable因而是線程安全的單仍然是不可重入,即在單線程中不能對(duì)兩個(gè)源字符串交替調(diào)用該函數(shù)來分析token,應(yīng)當(dāng)對(duì)一個(gè)字符串分析完成后再處理別的字符串。

size_t?strxfrm(char?*dest,?const?char?*src,?size_t?n);//根據(jù)當(dāng)前l(fā)ocale轉(zhuǎn)換一個(gè)字符串為strcmp使用的內(nèi)部格式

C語(yǔ)言關(guān)于字符串的函數(shù)

string里有一個(gè)這樣的函數(shù),我覺得挺符合你的要求

函數(shù)名: char* strstr(char *haystack, char *needle)

功 能: 從字符串haystack中尋找needle第一次出現(xiàn)的位置(不比較結(jié)束符NULL)

頭文件:#includestring.h

說明:返回指向第一次出現(xiàn)needle位置的指針,如果沒找到則返回NULL

C語(yǔ)言中對(duì)字符串進(jìn)行操作的標(biāo)準(zhǔn)庫(kù)函數(shù)有哪些

1)字符串操作

strcpy(p, p1) 復(fù)制字符串

strncpy(p, p1, n) 復(fù)制指定長(zhǎng)度字符串

strcat(p, p1) 附加字符串

strncat(p, p1, n) 附加指定長(zhǎng)度字符串

strlen(p) 取字符串長(zhǎng)度

strcmp(p, p1) 比較字符串

strcasecmp忽略大小寫比較字符串

strncmp(p, p1, n) 比較指定長(zhǎng)度字符串

strchr(p, c) 在字符串中查找指定字符

strrchr(p, c) 在字符串中反向查找

strstr(p, p1) 查找字符串

strpbrk(p, p1) 以目標(biāo)字符串的所有字符作為集合,在當(dāng)前字符串查找該集合的任一元素

strspn(p, p1) 以目標(biāo)字符串的所有字符作為集合,在當(dāng)前字符串查找不屬于該集合的任一元素的偏移

strcspn(p, p1) 以目標(biāo)字符串的所有字符作為集合,在當(dāng)前字符串查找屬于該集合的任一元素的偏移

* 具有指定長(zhǎng)度的字符串處理函數(shù)在已處理的字符串之后填補(bǔ)零結(jié)尾符

2)字符串到數(shù)值類型的轉(zhuǎn)換

strtod(p, ppend) 從字符串 p 中轉(zhuǎn)換 double 類型數(shù)值,并將后續(xù)的字符串指針存儲(chǔ)到 ppend 指向的 char* 類型存儲(chǔ)。

strtol(p, ppend, base) 從字符串 p 中轉(zhuǎn)換 long 類型整型數(shù)值,base 顯式設(shè)置轉(zhuǎn)換的整型進(jìn)制,設(shè)置為 0 以根據(jù)特定格式判斷所用進(jìn)制,0x, 0X 前綴以解釋為十六進(jìn)制格式整型,0 前綴以解釋為八進(jìn)制格式整型

atoi(p) 字符串轉(zhuǎn)換到 int 整型

atof(p) 字符串轉(zhuǎn)換到 double 符點(diǎn)數(shù)

atol(p) 字符串轉(zhuǎn)換到 long 整型

3)字符檢查

isalpha() 檢查是否為字母字符

isupper() 檢查是否為大寫字母字符

islower() 檢查是否為小寫字母字符

isdigit() 檢查是否為數(shù)字

isxdigit() 檢查是否為十六進(jìn)制數(shù)字表示的有效字符

isspace() 檢查是否為空格類型字符

iscntrl() 檢查是否為控制字符

ispunct() 檢查是否為標(biāo)點(diǎn)符號(hào)

isalnum() 檢查是否為字母和數(shù)字

isprint() 檢查是否是可打印字符

isgraph() 檢查是否是圖形字符,等效于 isalnum() | ispunct()

c語(yǔ)言字符串函數(shù)有哪些

復(fù)制相關(guān)函數(shù):memcpy、memmove、strcpy、strncpy

字符串連接函數(shù):strcat、strncat

字符串比較函數(shù):memcmp、strcmp、strcoll、strncmp、strxfrm、

查找函數(shù):memchr、strchr、strcspn、strpbrk、strrchr、strspn、strstr、strtok

其他相關(guān)函數(shù):memset、strerror、strlen

C語(yǔ)言 字符串函數(shù)

首先要明白,sizeof不是函數(shù),而是操作符;strlen是函數(shù)。

操作符sizeof用來判斷對(duì)象、類型所占用的內(nèi)存空間的字節(jié)數(shù),strlen是計(jì)算一個(gè)字符串以字節(jié)計(jì)的長(zhǎng)度。如:sizeof(int)、sizeof(double)、sizeof(char)等是合法的,可以計(jì)算出int、double、char這些類型所占用的字節(jié)數(shù)分別是4、8、1,而用strlen則是非法的。再如:若有char

a[20]="123";,那么,strlen(a)的結(jié)果是3,而sizeof(a)的結(jié)果是20;前者是字符串“123”的長(zhǎng)度,后者是為數(shù)組a分配的內(nèi)存空間。還有:當(dāng)計(jì)算一個(gè)指向字符串的指針時(shí),sizeof得到的是指針本身的長(zhǎng)度即固定為4(32位機(jī)),而strlen得到的是指針指向的字符串的長(zhǎng)度。如:char

a[20]="1234567",*p=a;,則,sizeof(p)=4,而strlen(p)=7。似乎復(fù)雜了點(diǎn)。記住一個(gè)原則就好判斷:操作符sizeof用來計(jì)算系統(tǒng)為對(duì)象本身分配的空間(以字節(jié)計(jì)),函數(shù)strlen用來計(jì)算字符串的長(zhǎng)度(以字節(jié)計(jì))。

分享文章:c語(yǔ)言字符串類型函數(shù),c語(yǔ)言字符串函數(shù)有哪些
本文路徑:http://m.kartarina.com/article48/dseichp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、關(guān)鍵詞優(yōu)化動(dòng)態(tài)網(wǎng)站、軟件開發(fā)、搜索引擎優(yōu)化、靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作
主站蜘蛛池模板: 日韩欧精品无码视频无删节| 天码av无码一区二区三区四区| 免费无码毛片一区二区APP| 中文无码精品A∨在线观看不卡| 无码国产精品一区二区免费式芒果| 久久国产精品无码一区二区三区| 国产精品无码翘臀在线观看 | 亚洲精品无码久久久久去q| 亚洲中文久久精品无码1| 亚洲人成国产精品无码| 色欲狠狠躁天天躁无码中文字幕| 亚洲精品无码你懂的| 国产亚洲?V无码?V男人的天堂 | 亚洲男人在线无码视频| 无码人妻精品一区二区蜜桃网站| 人妻少妇无码精品视频区| 亚洲人成人伊人成综合网无码 | 无码人妻少妇色欲AV一区二区| 黄色成人网站免费无码av| 无码人妻一区二区三区在线视频| 精品久久久无码中文字幕 | 日韩精品无码一区二区三区四区| 亚洲AV无码AV吞精久久| 人妻少妇精品无码专区二区 | 中文字幕丰满乱子伦无码专区| 激情无码亚洲一区二区三区| 亚洲中文字幕无码mv| 久久人妻无码中文字幕| 无码人妻视频一区二区三区| 亚洲AV无码一区东京热| 亚洲中文字幕无码专区 | 日韩A无码AV一区二区三区| 久久亚洲精品成人无码| 亚洲爆乳无码专区www| 亚洲日韩一区二区一无码| 激情无码人妻又粗又大中国人| 久久久无码精品亚洲日韩蜜臀浪潮| 亚洲国产精品无码AAA片| 亚洲AV无码不卡无码| 久久久久久无码Av成人影院| 人妻中文字系列无码专区|