Linux C - C基礎(chǔ)篇九(c庫(kù)中字符串函數(shù)介紹)
以下我總結(jié)了c標(biāo)準(zhǔn)庫(kù)中最常用的字符串函數(shù)的用法,希望對(duì)剛剛學(xué)習(xí)c基礎(chǔ)的同學(xué)能有所幫助;對(duì)于初學(xué)者可以根據(jù)我寫的例子自己動(dòng)手敲敲代碼,也可以在這個(gè)基礎(chǔ)上進(jìn)行改動(dòng)嘗試,在這個(gè)過程中可以發(fā)現(xiàn)問題,解決這些問題的過程你會(huì)學(xué)到更多的知識(shí)。
字符串長(zhǎng)度通過Linux下的man工具可以很方便的查看c庫(kù)里面的函數(shù)接口的詳細(xì)信息,例如man strlen,可以獲取strlen這個(gè)函數(shù)的信息:
函數(shù)原型:size_t strlen(const char *s);
功能:計(jì)算一個(gè)字符串的長(zhǎng)度
需要包含頭文件:#include <string.h>
參數(shù):需要傳入一個(gè)字符串
返回值:返回傳入字符串的字節(jié)個(gè)數(shù),即字符串的長(zhǎng)度
函數(shù)原型:函數(shù)原型如上圖
功能:分別將字符串轉(zhuǎn)換為int、long、long long類型的整數(shù)
需要包含頭文件:#include <stdlib.h>
參數(shù):要轉(zhuǎn)換成整數(shù)的字符串
返回值:分別為對(duì)應(yīng)類型的整數(shù)
需要注意的是,當(dāng)傳入atoi的參數(shù)是非整數(shù)的字符串時(shí),例如"hello",那么將返回0。
字符串復(fù)制函數(shù)原型:函數(shù)原型如上圖
功能:將一個(gè)字符串復(fù)制到另一個(gè)字符串變量中
需要包含頭文件:#include <string.h>
參數(shù):dest:目的字符串 src:源字符串 size:要cp的大小
返回值:成功則返回目的字符串的首地址
從上面的例子可以看出,strncpy和strcpy的區(qū)別是strncpy可以指定要復(fù)制的字符串的大小。
字符串比較函數(shù)原型:函數(shù)原型如上圖
功能:將一個(gè)字符串和另一個(gè)字符串的大小進(jìn)行比較
需要包含頭文件:#include <string.h>
參數(shù):s1、s2要進(jìn)行比較的兩個(gè)字符串的首地址,size:對(duì)兩個(gè)字符串的前size個(gè)字節(jié)進(jìn)行比較
返回值:如果兩個(gè)字符串相等則返回0,如果不相等則返回不相等的兩個(gè)字符的ascii碼的差值
字符串的大小比較是從兩個(gè)字符串的第一個(gè)字符依次往后比較的,比較的是每個(gè)字節(jié)的ascii碼值的大小;從上面的例子可以看出,strncmp可以只比較兩個(gè)字符串的前size個(gè)字節(jié)。
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。
熱像儀相關(guān)文章:熱像儀原理