C语言字符串操作函数的实现方法
发表于:2024-10-27 作者:千家信息网编辑
千家信息网最后更新 2024年10月27日,本篇内容介绍了"C语言字符串操作函数的实现方法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!#inc
千家信息网最后更新 2024年10月27日C语言字符串操作函数的实现方法
本篇内容介绍了"C语言字符串操作函数的实现方法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
#include#include #include /*******string库函数集合********/int my_strlen(const char *str){ int ret = 0; assert(str != NULL); while(*str++ != '\0') ++ret; return ret;}/*******不得自定义变量*********/int my_strlen2(const char *str){ if((*str) == '\0') return 0; else return (1 + my_strlen(++str));}//=========字符串查找=========//char *my_strstr(char *strSrc, char *substr){ int i, j; int lenstr, sublen; int num; if(strSrc == NULL || substr == NULL) return NULL; lenstr = strlen(strSrc); sublen = strlen(substr); if(lenstr < sublen) return NULL; num = lenstr - sublen; for(i = 0; i <= num; i++) { for(j = 0; j < sublen; j++) { if(strSrc[i+j] != substr[j]) break; } if(j == sublen) return (strSrc + i); } return NULL;}char *my_strstr2(const char *strSrc, const char *str){ assert(strSrc != NULL && str != NULL); const char *s = strSrc; const char *t = str; for(; *strSrc != '\0'; ++strSrc) { for( s= strSrc, t = str; (*t != '\0') && (*s == *t); ++s, ++t ) { } if(*t == '\0') return (char *)strSrc; } return NULL;}//=========字符串拷贝=========//char *my_strcpy(char *strDst, char *strSrc){ if(strDst == strSrc) return strDst; assert( (strDst != NULL) && (strSrc != NULL) ); char *address = strDst; while( (*strDst++ = *strSrc++) != '\0'); return address;}char *my_strncpy(char *strDst, char *strSrc, int count){ assert(strDst != NULL && strSrc != NULL); char *address = strDst; while((count--) && (*strSrc != '\0')) *strDst ++ = *strSrc++; *strDst = '\0'; return address;}//==========字符串链接=========//char *my_strcat(char *strDst, const char *strSrc){ assert((strDst != NULL) && (strSrc != NULL)); char *address = strDst; while(*strDst != '\0') ++ strDst; while((*strDst++ = *strSrc++) != '\0'); return address;}char *my_strncat(char *strDst, const char *strSrc, unsigned int count){ assert((strDst != NULL) && (strSrc != NULL)); char *address = strDst; while(*strDst != '\0') ++strDst; while(count-- && *strSrc != '\0') *strDst++ = *strSrc++; *strDst = '\0'; return address;}//=========将字符串所有替换成字符=========//char *my_strset(char *str, int c){ assert(str != NULL); char *s = str; for(; *s != '\0'; ++s) *s = (char)c; return str;}char *my_strnset(char *str, int c, unsigned int count){ assert(str != NULL); char *s = str; for(; (*s != '\0') && ((s - str) iCount) { iCount = iTemp; strDst = strTemp; } if((*strSrc)=='\0') break; } strSrc++; } return strDst;}//========================================================// 题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。// 分析:这道题是2006 年google 的一道笔试题。// 思路:将所有出现的字符的个数存储在数组a中//========================================================char first_single_char(char *str){ int a[255]; char *p = str; memset(a, 0, 255*sizeof(int)); while(*p != '\0') { a[*p] ++; p++; } p = str; while((*p) != '\0') { if(a[*p] == 1) return *p; } return '\0';}花了一个下午,终于搞定。
"C语言字符串操作函数的实现方法"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
字符
字符串
函数
方法
语言
内容
更多
知识
题目
输出
实用
学有所成
接下来
一道
个数
位置
变量
困境
实际
思路
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
外汇分析的软件开发
医疗数据库开发
数据库怎样查有多少条数据
我的世界服务器怎么重新生成地图
甘南互联网科技
小学数学资源数据库
java软件开发用什么主板
在ebsco数据库如何选择语言
河北语音网络技术服务优势
66公里网络技术
用套接字搭建tcp服务器
嘉定区口碑好的软件开发诚信合作
四川派格润科技互联网装修
鸿鹄网络技术有限公司
数据库基本层次结构图
pve服务器排行
软件开发应该注意哪些问题
广东凯盛互联网科技
怎么查询网络安全执法案例
深圳app软件开发商
面临怎样的网络安全问题
360旗下网络安全公司叫什么
管家婆连接失败请输入服务器名
网络安全 互动体验
r710和r720服务器
触摸屏组态软件开发
创建数据库实例netca
饥荒联机进不去别人的服务器
同盾科技互联网大会
软件开发有什么好的培训