strcpy strcmp memmove
2016-02-28 23:55
267 查看
Strcpy实现:
结果:
bit_tech
Strcmp实现:
结果:
p1<p2
Memmove实现:
结果:1 2 3 2 3 4 5 8 9
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<assert.h> char*my_strcpy(char*dest, const char*src) { char*ret = NULL; assert(dest); assert(src); ret = dest; while (*dest++ = *src++) {} return ret; } int main() { char arr[10]; my_strcpy(arr, "bit_tech"); printf("%s\n", arr); system("pause"); return 0; }
结果:
bit_tech
Strcmp实现:
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<assert.h> int*my_strcmp(const char*str1, const char*str2) { assert(str1); assert(str2); while (*str1== *str2) { if (*str1 == '\0') { return 0; } str1++; str2++; } return*str1 - *str2; } int main() { char*p1 = "abcdef"; char*p2 = "acbcde"; int ret=my_strcmp(p1,p2); if (ret > 0) { printf("p1>p2\n"); } else if (ret = 0) { printf("p1=p2\n"); } else printf("p1<p2\n"); system("pause"); return 0; }
结果:
p1<p2
Memmove实现:
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<assert.h> void*my_memmove(void*dest, const void*src,size_t count) { char*ret = NULL; char*pdest = (char*)dest; char*psrc = (char*)src; ret = dest; assert(dest); assert(src); if ((pdest<psrc + count) && (pdest>psrc))//从后向前拷贝 { while (count--) { pdest[count] = psrc[count]; } } else { while (count--) { *(pdest++) = *(psrc++); } } return ret; } int main() { int i = 0; int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; my_memmove(arr + 3, arr + 1, 4 * 4); for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++) { printf("%d ", arr[i]); } printf("\n"); system("pause"); return 0; }
结果:1 2 3 2 3 4 5 8 9
相关文章推荐
- 深入分析C中不安全的sprintf与strcpy
- php strcmp使用说明
- C语言中的strdup()函数和其与strcpy()函数的区别
- 使用python实现strcmp函数功能示例
- 详解C语言中strcpy()函数与strncpy()函数的使用
- PHP中strcmp()和strcasecmp()函数字符串比较用法分析
- PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法分析(对比strcmp函数)
- 基于PHP字符串的比较函数strcmp()与strcasecmp()的使用详解
- 惊讶,微软的所谓“安全的”文字列拷贝函数strcpy_s 居然非常粗暴(只在Debug版发生)
- C/C++中野指针的问题
- C 语言之strcmp()
- strcpy函数实现
- strcpy函数实现-续
- VS2010编译警告:warning C4996:‘strcpy’:This function
- 学习笔记---str族函数
- strcpy函数实现
- strcpy memcpy等相关函数实现
- strncpy()函数
- strcpy和memcpy的区别与实现
- C语言模拟实现strcpy函数,strcat函数,strcmp函数