您好,登錄后才能下訂單哦!
本文章向大家介紹使用C語言怎么求字符串的長度,主要包括使用C語言怎么求字符串的長度的使用實例、應(yīng)用技巧、基本知識點總結(jié)和需要注意事項,具有一定的參考價值,需要的朋友可以參考一下。
C語言是一門面向過程的、抽象化的通用程序設(shè)計語言,廣泛應(yīng)用于底層開發(fā),使用C語言可以以簡易的方式編譯、處理低級存儲器。
1.最常用的方法是創(chuàng)建一個計數(shù)器,判斷是否遇到‘\0',不是'\0'指針就往后加一。
int my_strlen(const char *str) { assert(str != NULL); int count = 0; while (*str != '\0') { count++; str++; } return count; }
2.不創(chuàng)建計數(shù)器,從前向后遍歷一遍,沒有遇到‘\0'就讓指針向后加一,找到最后一個字符,記下來地址,然后用最后一個字符的地址減去起始地址,就得到了字符串的長度。
int my_strlen(const char *str) { char *end = str; assert(str!=NULL); assert(end!=NULL); while (*end != '\0') { end++; } return end - str; }
3.不創(chuàng)建計數(shù)器,遞歸實現(xiàn)。
int my_strlen(const char *str) { assert(str != NULL); if (*str == '\0') { return 0; } else { return (1 + my_strlen(++str)); } }
也可以寫成這樣:
int my_strlen(const char *str) { assert(str != NULL); return (*str == '\0') ? 0 : (my_strlen(++str) + 1); }
或者這樣:
int my_strlen(const char *str) { assert(str != NULL); return (*str == '\0') ? 0 : (my_strlen(str+1) + 1); }
到此這篇關(guān)于使用C語言怎么求字符串的長度的文章就介紹到這了,更多相關(guān)的內(nèi)容請搜索億速云以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持億速云!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。