模拟实现字符串相关函数
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
//int main()
//{
// const int num = 10;
// int* const p = #
// int n = 100;
// p = &n;//表达式必须是可修改的左值
//
// return 0;
//}
//#include<assert.h>
//
把src指向的内容拷贝放到dest指向的空间中
本质上讲,希望dest指向的内容被修改,src指向的内容不应该被修改
//void my_strcpy(char* dest,const char* src)
加了const如果不小心写反了,写成*src++=*dest++ ,会报错
//{
// assert(src != NULL);//断言
// assert(dest != NULL);//断言
//
// while (*dest++ = *src++)//'\0'的ASCII码值为0,既拷贝了\0,又使得循环停止
// {
// ;//hello的拷贝
// }
//}
//#include<assert.h>
把src指向的内容拷贝放到dest指向的空间中
本质上讲,希望dest指向的内容被修改,src指向的内容不应该被修改
strcpy这个库函数 其实返回的是目标空间的起始地址
//char* my_strcpy(char* dest, const char* src)
加了const如果不小心写反了,写成*src++=*dest++ ,会报错
//{
// assert(src != NULL);//断言
// assert(dest != NULL);//断言
// char* ret = dest;
// while (*dest++ = *src++)//'\0'的ASCII码值为0,既拷贝了\0,又使得循环停止
// {
// ;//hello的拷贝
// }
// return ret;//返回目标空间的起始地址
//}
//int main()
//{
// char arr1[20] = "xxxxxxxxxxxxxxxxxx";
// char arr2[] = "helllo\0";
// my_strcpy(arr1,arr2);//1.目标空间的起始地址,2.源空间的起始地址
// printf("%s\n", my_strcpy(arr1,arr2));//链式访问
// return 0;
//}
//int main()
//{
// char arr[] = "abc";
// int len = strlen(arr);
// printf("%d\n", len);
// return 0;
//}
//strlen 是求字符串长度的
//my_strlen
// 1.const
//2.assert
//3.
//健壮性
//鲁棒性
//
//#include<assert.h>
//int my_strlen(const char* str)
//{
// assert(str != NULL);
// //assert(str);
// int count = 0;
// while (str!='\0')
// {
// count++;
// str++;
// }
// return count;
//}
//int main()
//{
// char arr[] = "abcdef";
// int len = my_strlen(arr);
// printf("%d\n",len);
// return 0;
//}
//#include<assert.h>
size_t-unsigned int
//size_t my_strlen(const char* str)
//{
// assert(str != NULL);
// //assert(str);
// size_t count = 0;
// while (str != '\0')
// {
// count++;
// str++;
// }
// return count;
//}
//int main()
//{
// char arr[] = "abcdef";
// int len = my_strlen(arr);
// printf("%d\n", len);
// return 0;
//}
//编程常见错误
//分类
//
//编译型错误-语法错误,双击错误查看,相对简单
//
//链接型LNK错误-无法解析的外部符号
// 要么这个符号不存在
// 要么符号写错了
//
//运行时错误
//借助调试,逐步定位问题,最难搞
//
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)