博客專欄

        EEPW首頁 > 博客 > Linux C - C基礎(chǔ)篇九(c庫中字符串函數(shù)介紹)

        Linux C - C基礎(chǔ)篇九(c庫中字符串函數(shù)介紹)

        發(fā)布人:嵌入式Linux 時間:2023-01-12 來源:工程師 發(fā)布文章

        以下我總結(jié)了c標準庫中最常用的字符串函數(shù)的用法,希望對剛剛學習c基礎(chǔ)的同學能有所幫助;對于初學者可以根據(jù)我寫的例子自己動手敲敲代碼,也可以在這個基礎(chǔ)上進行改動嘗試,在這個過程中可以發(fā)現(xiàn)問題,解決這些問題的過程你會學到更多的知識。

        字符串長度

        通過Linux下的man工具可以很方便的查看c庫里面的函數(shù)接口的詳細信息,例如man strlen,可以獲取strlen這個函數(shù)的信息:

        • 函數(shù)原型:size_t strlen(const char *s);

        • 功能:計算一個字符串的長度

        • 需要包含頭文件:#include <string.h>

        • 參數(shù):需要傳入一個字符串

        • 返回值:返回傳入字符串的字節(jié)個數(shù),即字符串的長度

        字符串轉(zhuǎn)換函數(shù)
        • 函數(shù)原型:函數(shù)原型如上圖

        • 功能:分別將字符串轉(zhuǎn)換為int、long、long long類型的整數(shù)

        • 需要包含頭文件:#include <stdlib.h>

        • 參數(shù):要轉(zhuǎn)換成整數(shù)的字符串

        • 返回值:分別為對應類型的整數(shù)

        需要注意的是,當傳入atoi的參數(shù)是非整數(shù)的字符串時,例如"hello",那么將返回0。

        字符串復制
        • 函數(shù)原型:函數(shù)原型如上圖

        • 功能:將一個字符串復制到另一個字符串變量中

        • 需要包含頭文件:#include <string.h>

        • 參數(shù):dest:目的字符串 src:源字符串 size:要cp的大小

        • 返回值:成功則返回目的字符串的首地址

        從上面的例子可以看出,strncpy和strcpy的區(qū)別是strncpy可以指定要復制的字符串的大小。

        字符串比較
        • 函數(shù)原型:函數(shù)原型如上圖

        • 功能:將一個字符串和另一個字符串的大小進行比較

        • 需要包含頭文件:#include <string.h>

        • 參數(shù):s1、s2要進行比較的兩個字符串的首地址,size:對兩個字符串的前size個字節(jié)進行比較

        • 返回值:如果兩個字符串相等則返回0,如果不相等則返回不相等的兩個字符的ascii碼的差值

        字符串的大小比較是從兩個字符串的第一個字符依次往后比較的,比較的是每個字節(jié)的ascii碼值的大小;從上面的例子可以看出,strncmp可以只比較兩個字符串的前size個字節(jié)。


        *博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。

        熱像儀相關(guān)文章:熱像儀原理


        關(guān)鍵詞: 字符串函數(shù)

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 台北县| 固安县| 乌拉特后旗| 金乡县| 苍南县| 钟祥市| 庐江县| 仙游县| 唐河县| 兴和县| 和平区| 洪江市| 昌图县| 威信县| 公安县| 高阳县| 岳池县| 通道| 铅山县| 怀来县| 新津县| 大连市| 丹寨县| 昌吉市| 富阳市| 平果县| 伊金霍洛旗| 黄大仙区| 沅江市| 沾益县| 皋兰县| 德昌县| 景宁| 留坝县| 景洪市| 商河县| 黑河市| 宁强县| 舞阳县| 河曲县| 当雄县|