溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言的字符函數(shù)和字符串函數(shù)怎么用

發(fā)布時間:2022-01-10 14:22:07 來源:億速云 閱讀:149 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要講解了“C語言的字符函數(shù)和字符串函數(shù)怎么用”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C語言的字符函數(shù)和字符串函數(shù)怎么用”吧!

    一、字符&字符串函數(shù)

    1.strlen--求字符串長度                                                                                                                 

    釋:是所求‘\0’之前的字符個數(shù)。庫函數(shù)類型-size_t(const char*)    size_t == unsigned int

    #include <string.h>
    int main()
    {
    	char arr[] = "hello world";
    	printf("%d\n",strlen(arr));
     
    	return 0;
    }

    C語言的字符函數(shù)和字符串函數(shù)怎么用

    長度不受限長度受限
    strcpystrncpy
    strcatstrncat
    strcmpstrncmp

    2.1.strcpy--拷貝字符串

    庫函數(shù)類型-char* (char*, const char*)

    源字符串-被拷貝字符串

    釋:&lsquo;\0&rsquo;是拷貝字符串終止拷貝的條件,且目標空間必須有足夠大的空間放下源字符串。

    #include <string.h>
    int main()
    {
    	char arr1[20] = { 0 };
    	char arr2[] = "hello world";
        strcpy(arr1,arr2);
    	printf("%s\n",arr1);
     
    	return 0;
    }

    C語言的字符函數(shù)和字符串函數(shù)怎么用

    2.2.strcat--追加字符串/鏈接字符串

    庫函數(shù)類型-char* (char*, const char*)

    釋:通過找到目標字符串里的&lsquo;\0&rsquo;,再將源字符追加過去

    #include <string.h>
    int main()
    {
    	char arr1[20] = "hello ";
    	char arr2[] = "world";
    	printf("%s\n",strcat(arr1,arr2));
     
    	return 0;
    }

    C語言的字符函數(shù)和字符串函數(shù)怎么用

    2.3.strcmp--字符串比較

    庫函數(shù)類型-int  (const char*, const char*)

    釋:將左字符串與右字符串比較:小于返回小于0值,等于返回0,大于返回大于0值。

    比較方式:將兩個字符串,按從左到右,一個一個字符的比較,按對應的ascll碼進行比較。

    等于的情況

    #include <string.h>
    int main()
    {
    	char arr1[] = "abc";
    	char arr2[] = "abc";
    	printf("%d\n",strcmp(arr1,arr2));
     
    	return 0;
    }

    C語言的字符函數(shù)和字符串函數(shù)怎么用

    大于的情況

    #include <string.h>
    int main()
    {
    	char arr1[] = "abc";
    	char arr2[] = "abd";
    	printf("%d\n",strcmp(arr1,arr2));
     
    	return 0;
    }

    C語言的字符函數(shù)和字符串函數(shù)怎么用

    小于的情況

    #include <string.h>
    int main()
    {
    	char arr1[] = "abd";
    	char arr2[] = "abc";
    	printf("%d\n",strcmp(arr1,arr2));
     
    	return 0;
    }

    C語言的字符函數(shù)和字符串函數(shù)怎么用

    2.4.strncpy--受限的字符串拷貝

    庫函數(shù)類型-char* (char*, const char*,size_t)

    size_t == unsigned int

    釋:可以自己選擇想要拷貝的字符個數(shù)。

    注:如果選擇拷貝的字符個數(shù),大于源字符的長度,則多的部分拷貝為&lsquo;\0&rsquo;

    #include <string.h>
    int main()
    {
    	char arr1[20] = "abd";
    	char arr2[] = "hello world";
    	printf("%s\n",strncpy(arr1,arr2,5));
     
    	return 0;
    }

    2.5.strncat--受限連接字符串

    庫函數(shù)類型-char* (char*,const char*,size_t)

    釋:可以自己選擇想要追加/連接的字符個數(shù)。

    注:如果追加的字符長度大于源字符串長度,則扔在&lsquo;\0&rsquo;處就停止了,如果不足源字符長度,則自動追加一個&lsquo;\0&rsquo;

    #include <string.h>
    int main()
    {
    	char arr1[20] = "abd ";
    	char arr2[] = "hello world";
    	printf("%s\n",strncat(arr1,arr2,5));
     
    	return 0;
    }

    2.6.strncmp--受限的比較字符串

    函數(shù)庫類型-int (const char*,const char*,size_t)

    釋:可以自己選擇想要比較的字符長度

    #include <string.h>
    int main()
    {
    	char arr1[20] = "abd ";
    	char arr2[] = "hello world";
    	printf("%d\n",strncmp(arr1,arr2,5));
     
    	return 0;
    }

    感謝各位的閱讀,以上就是“C語言的字符函數(shù)和字符串函數(shù)怎么用”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對C語言的字符函數(shù)和字符串函數(shù)怎么用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

    向AI問一下細節(jié)

    免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

    AI