国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C語言中求字符串長度的函數(shù)的幾種實(shí)現(xiàn)方法

2020-05-23 13:30:04
字體:
供稿:網(wǎng)友

1.最常用的方法是創(chuàng)建一個計(jì)數(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)建計(jì)數(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)建計(jì)數(shù)器,遞歸實(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語言中獲取字符串長度的函數(shù)就介紹到這了,需要的朋友可以參考一下。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 聂荣县| 新龙县| 邵东县| 团风县| 安多县| 梅州市| 弥勒县| 勃利县| 什邡市| 固阳县| 普兰县| 满洲里市| 台中市| 武乡县| 宜良县| 米脂县| 贡觉县| 高密市| 侯马市| 安多县| 贡觉县| 方山县| 娄底市| 涞源县| 罗田县| 宽甸| 新丰县| 蕉岭县| 枣庄市| 五指山市| 丽江市| 天全县| 湘乡市| 新余市| 新郑市| 综艺| 铁岭市| 郓城县| 平和县| 平昌县| 太康县|