- 相關(guān)推薦
strlen的幾種不同實(shí)現(xiàn)方法
int strlen(const char *str)
{
assert(str != NULL);
int len = 0;
while((*str++) != ‘\0′)
len++;
return len;
}
第二種方法:
int strlen(const char *str)
{
assert(str);
const char *p = str;
while(*p++); /*use addresses to count the length of str*/
return p – str – 1;
}
第三種方法:
int strlen(const char* str)
{
if (str[0] == ‘\0′)
return 0;
else
return strlen((char *)(&str[0]+1))+1; /*iteration*/
}
ANSI C標(biāo)準(zhǔn)中的說法摘錄如下: (1)當(dāng)一個(gè)數(shù)組標(biāo)識(shí)符出現(xiàn)在表達(dá)式中,這個(gè)標(biāo)識(shí)符的類型就從“某種類型T的數(shù)組”轉(zhuǎn)換成“指向類型T的指針”,而且它的值就等于數(shù)組第一個(gè)元素的地址,
strlen的幾種不同實(shí)現(xiàn)方法
,資料共享平臺(tái)
《strlen的幾種不同實(shí)現(xiàn)方法》(http://www.ishadingyu.com)。但是當(dāng)數(shù)組標(biāo)識(shí)符被用作sizeof和取址(&)操作的操作數(shù)時(shí),sizeof返回的是整個(gè)數(shù)組的大小,而取址操作返回的是指向數(shù)組的指針(而不是指向一個(gè)值為數(shù)組頭元素地址的指針的指針)。(2)下列表達(dá)式不能產(chǎn)生lvalue: 數(shù)組名,函數(shù),枚舉常量,賦值表達(dá)式,強(qiáng)制類型轉(zhuǎn)換,函數(shù)調(diào)用。【strlen的幾種不同實(shí)現(xiàn)方法】相關(guān)文章:
常用的幾種讀書方法07-27
幾種典型的個(gè)性測(cè)試方法05-27
恭喜的幾種英語表達(dá)方法07-18
關(guān)于最新幾種特別的學(xué)習(xí)方法09-05
不同肌膚類型如何選擇美白方法06-19
四種不同體型女性的著裝方法09-28
不同的人、不同的品味10-16
不同公司的不同筆試10-17
完勝英語面試自我介紹10種不同方法07-08