十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
C語言中測試字符串長度的函數(shù)是strlen()
成都創(chuàng)新互聯(lián)提供高防物理服務(wù)器租用、云服務(wù)器、香港服務(wù)器、成都服務(wù)器托管等
函數(shù)原型:
unsigned?int?strlen?(char?*s);
頭文件:
#include?string.h
代碼如下
#includestdio.h
#includestring.h
int?main()
{
char?str[]?=?"aaaaaa";
printf("strlen(str)=%d\n",?strlen(str1));
return?0;
}
strlen()只是統(tǒng)計字符串的長度,統(tǒng)計到'\0'結(jié)束,但不包括'\0',這個與sizeof()不一樣。
對于用雙引號引起來的字符串,系統(tǒng)默認(rèn)最后一位字符為'\0',如你自己定義的:
char a[]="china";
char b[]={"china"};
另外,數(shù)組初始化還可以是一個字符一個字符賦值,如:
char c[]={'c','h','i','n','a'};
char d[]={'c','h','i','n','a','\0'};
但系統(tǒng)不會自動給你在最末位添加'\0’
所以在統(tǒng)計char c[]={'c','h','i','n','a'}時,統(tǒng)計到a時,系統(tǒng)還沒找到\0,所以會繼續(xù)統(tǒng)計,直到找到'\0'為止。所以就有你第三個值為11的情況,這個根據(jù)不同的運(yùn)行環(huán)境而定。
C語言中,計算字符串長度的函數(shù)為strlen。
1 形式:
int strlen(const char *s);
2 頭文件:
string.h
3 功能:
計算字符串s的長度,并返回。