您好,登錄后才能下訂單哦!
這篇文章主要講解了“C語言的字符函數和字符串函數怎么用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C語言的字符函數和字符串函數怎么用”吧!
釋:是所求‘\0’之前的字符個數。庫函數類型-size_t(const char*)
size_t == unsigned int
#include <string.h> int main() { char arr[] = "hello world"; printf("%d\n",strlen(arr)); return 0; }
長度不受限 | 長度受限 |
strcpy | strncpy |
strcat | strncat |
strcmp | strncmp |
庫函數類型-char* (char*, const char*)
源字符串-被拷貝字符串
釋:‘\0’是拷貝字符串終止拷貝的條件,且目標空間必須有足夠大的空間放下源字符串。
#include <string.h> int main() { char arr1[20] = { 0 }; char arr2[] = "hello world"; strcpy(arr1,arr2); printf("%s\n",arr1); return 0; }
庫函數類型-char* (char*, const char*)
釋:通過找到目標字符串里的‘\0’,再將源字符追加過去
#include <string.h> int main() { char arr1[20] = "hello "; char arr2[] = "world"; printf("%s\n",strcat(arr1,arr2)); return 0; }
庫函數類型-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; }
大于的情況
#include <string.h> int main() { char arr1[] = "abc"; char arr2[] = "abd"; printf("%d\n",strcmp(arr1,arr2)); return 0; }
小于的情況
#include <string.h> int main() { char arr1[] = "abd"; char arr2[] = "abc"; printf("%d\n",strcmp(arr1,arr2)); return 0; }
庫函數類型-char* (char*, const char*,size_t)
size_t == unsigned int
釋:可以自己選擇想要拷貝的字符個數。
注:如果選擇拷貝的字符個數,大于源字符的長度,則多的部分拷貝為‘\0’
#include <string.h> int main() { char arr1[20] = "abd"; char arr2[] = "hello world"; printf("%s\n",strncpy(arr1,arr2,5)); return 0; }
庫函數類型-char* (char*,const char*,size_t)
釋:可以自己選擇想要追加/連接的字符個數。
注:如果追加的字符長度大于源字符串長度,則扔在‘\0’處就停止了,如果不足源字符長度,則自動追加一個‘\0’
#include <string.h> int main() { char arr1[20] = "abd "; char arr2[] = "hello world"; printf("%s\n",strncat(arr1,arr2,5)); return 0; }
函數庫類型-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語言的字符函數和字符串函數怎么用”的內容了,經過本文的學習后,相信大家對C語言的字符函數和字符串函數怎么用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。