c语言中的字符串函数的模拟实现

一. strcpy(char* arr1 , const char* arr2)函数
该函数的作用是将数组arr2中的内容复制到数组arr1中具体代码如下:

c语言中的字符串函数的模拟实现_第1张图片
此时arr1被赋值之后的结果是:
c语言中的字符串函数的模拟实现_第2张图片

二. strcat(char* arr1, const char* arr2)函数
该函数的作用是将数组arr1中的内容和数组arr2中的内容进行连接具体代码如下:
c语言中的字符串函数的模拟实现_第3张图片
将数组arr2的内容放到arr1中之后的结果为:
c语言中的字符串函数的模拟实现_第4张图片
三. strcmp(const char* arr1 , const char* arr2)函数
该函数是将arr1中的内容和arr2中的内容进行比较,并且通过该函数的返回值来判定两个数组的大小。如果返回值为大于零的则前者大于后者;反之后者大于前者;如果相等说明两个字符串相同。具体代码如下:

c语言中的字符串函数的模拟实现_第5张图片

比较之后的结果为:
c语言中的字符串函数的模拟实现_第6张图片
四. strstr(char* arr1 , char* arr2)函数
该函数的作用是在arr1中查找arr2字符串第一次出现的位置并从这里进行打印。具体代码如下:
c语言中的字符串函数的模拟实现_第7张图片
具体结果如下:
c语言中的字符串函数的模拟实现_第8张图片
五. strlen(char* arr)函数
该函数是用来计算一个字符串的长度。具体代码如下:
c语言中的字符串函数的模拟实现_第9张图片
该代码中的字符串长度的结果为:
c语言中的字符串函数的模拟实现_第10张图片
六. memcpy(void* arr1, const void* arr2, size_t count)函数

该函数是拷贝函数此处具体作用是将arr1中的前count个字节打印到arr2中,此函数是用来拷贝不想关的内存块,如果两个数组中有内存重叠那么此时不用该函数。具体代码如下:
c语言中的字符串函数的模拟实现_第11张图片
上面的代码是将arr2中的16个字节数据拷贝到arr1中可得结果为:
c语言中的字符串函数的模拟实现_第12张图片
七. memove(void* arr1, const void* arr2 , size_t count)函数

该函数是将arr2中的count个字节赋值给arr1具体代码如下:

c语言中的字符串函数的模拟实现_第13张图片
可得结果为:
c语言中的字符串函数的模拟实现_第14张图片

以上函数为c语言中字符串函数的具体模拟实现。

你可能感兴趣的:(其他,c语言)