" />

欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解C語言對字符串處理函數(shù)的實現(xiàn)方法

 更新時間:2021年12月29日 15:38:38   作者:GREEN@dehua  
這篇文章主要為大家介紹了C語言對字符串處理函數(shù)的實現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

strlen:

1.計數(shù)器版本:

#include<stdio.h>
#include<string.h>
#include<assert.h>
int my_strlen(const char *str)
{
	int count =0;
	assert(str!=NULL);
	while(*str!='\0')
	{
		count++;
		str++;
	}
	return count;
 } 

2.遞歸的版本

int my_strlen(const char *str)
{
 assert(str != NULL);
 if (*str == '\0')
 return 0;
 return (my_strlen(++str)+1);
}

3.指針-指針版本

int my_strlen(const char *str)
{
  char *end = str;
  assert(str!=NULL);
  assert(end!=NULL);
  while (*end != '\0')
  {
   end++;
  }
   return end - str;
}

strcat:

#include<stdio.h>
#include<string.h>
#include<assert.h>
char *my_strcat(char *dest,char *str)
{
	char *ret=dest;//存dest的首地址 
	assert(dest&&str);
	while(*dest)
	{
		dest++;
	}
	while(*dest++=*str++);
	dest=ret;
	return dest;
}

strcmp:

int my_strcmp(char *str1, char *str2)
{
	assert(str1&&str2);
	while(*str1==*str2)
	{
		if(str1=='\0'&&str2=='\0')
		return 0;
		str1++;
		str2++; 
	}
	if(*str1>*str2)
	return 1;
	return -1;
	 //或return str1-str2;
 } 

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • 詳解C++ cin.getline函數(shù)

    詳解C++ cin.getline函數(shù)

    這篇文章主要介紹了C++ cin.getline函數(shù)的相關(guān)資料,幫助大家更好的理解和學(xué)習C++,感興趣的朋友可以了解下
    2020-09-09
  • C語言十進制轉(zhuǎn)二進制代碼實例

    C語言十進制轉(zhuǎn)二進制代碼實例

    這篇文章主要介紹了C語言十進制轉(zhuǎn)二進制代碼實例,并且轉(zhuǎn)換后會統(tǒng)計二進制1的個數(shù),實例簡單明了,需要的朋友可以參考下
    2014-06-06
  • Mac OS上搭建Apache+PHP+MySQL開發(fā)環(huán)境的詳細教程

    Mac OS上搭建Apache+PHP+MySQL開發(fā)環(huán)境的詳細教程

    這篇文章主要介紹了Mac OS上搭建Apache+PHP+MySQL開發(fā)環(huán)境的詳細教程,包括常見的PHP連接MySQL失敗問題的解決辦法,需要的朋友可以參考下
    2016-01-01
  • C++中用substr()函數(shù)消除前后空格的解決方法詳解

    C++中用substr()函數(shù)消除前后空格的解決方法詳解

    本篇文章是對C++中用substr()函數(shù)消除前后空格的方法進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • 使用C語言繪制柱形圖的示例代碼

    使用C語言繪制柱形圖的示例代碼

    常用的統(tǒng)計圖有條形圖、柱形圖、折線圖、曲線圖、餅圖、環(huán)形圖、扇形圖,這篇文章主要為大家介紹了C語言中繪制條形圖和柱形圖的方法,需要的可以參考下
    2024-02-02
  • C++ Boost PointerContainer智能指針詳解

    C++ Boost PointerContainer智能指針詳解

    智能指針是一種像指針的C++對象,但它能夠在對象不使用的時候自己銷毀掉。雖然STL提供了auto_ptr,但是由于不能同容器一起使用(不支持拷貝和賦值操作),因此很少有人使用。它是Boost各組件中,應(yīng)用最為廣泛的一個
    2022-11-11
  • C++類的繼承和派生及指針安全引用

    C++類的繼承和派生及指針安全引用

    這篇文章主要介紹了C++類的繼承和派生及指針安全引用,繼承指從現(xiàn)有類獲得其特性,派生指從已有類產(chǎn)生新的類,指針和引用并存,二者似乎有很多相同點,但是又不完全相同,下面關(guān)于兩者的相關(guān)資料,需要的小伙伴可以參考一下
    2022-03-03
  • C語言實現(xiàn)通用數(shù)據(jù)結(jié)構(gòu)之通用集合(HashSet)

    C語言實現(xiàn)通用數(shù)據(jù)結(jié)構(gòu)之通用集合(HashSet)

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)通用數(shù)據(jù)結(jié)構(gòu)之通用集合,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • C++深入講解初始化列表的用法

    C++深入講解初始化列表的用法

    這篇文章主要介紹了C++成員初始化列表,除了可以使用構(gòu)造函數(shù)對類成員進行初始化之外,C++還提供了另外一種初始化的方法,叫做成員初始化列表。下面來看看文章的詳細吧,需要的朋友可以參考一下
    2022-04-04
  • C++ boost::asio編程-域名解析詳細介紹

    C++ boost::asio編程-域名解析詳細介紹

    這篇文章主要介紹了C++ boost::asio編程-域名解析詳細介紹的相關(guān)資料,這里附有實例代碼,幫助大家學(xué)習理解這部分知識,需要的朋友可以參考下
    2016-11-11

最新評論