几个字符串函数的实现
2017-12-21 11:46
351 查看
本来想用c语言嵌入汇编来实现几个常用字符串处理函数的,但是没调出来:)。
int len(const char *s) { int length=0; while(*s++!=NULL) length++;//一直往下走,直到预见"NULL",字符串结束标志 return length; } int cmp(const char *s,const char *d) { const char *s1,*d1; s1=s,d1=d; while((*s1==*d1)&&(*s1&&*d1))//当前比较的字符都非空,且相等,往下走;不满足这两个条件就跳出while. { s1++; d1++; } if((*s1==NULL)&&(*d1==NULL)) printf("%s equels to %s\n",s,d); if(*s1&&*d1) { if(*s1>*d1) { printf("%s is bigger than %s\n",s,d); return 1; } else { printf("%s is bigger than %s\n",d,s); return -1; } } else { if(*d1) { printf("%s is bigger than %s\n",d,s); return -1; } if(*s1) { printf("%s is bigger than %s\n",s,d); return 1; } } return 0; } char * cat(char *s,const char *d) { int length=0; char *cat,*cat1; length=len(s)+len(d);//计算合并后字符串的长度 cat=(char *)malloc(length),cat1=cat; while(*cat++=*s++);//拷贝 cat--;//be careful while(*cat++=*d++); printf("the combined string:%s\n",cat1); return cat1; } int main(int argc,char *argv) { int length=0; char * s="12345",*d="67890abc",*s1="12347"; cmp(s,d); cmp(s,s1); cat(s,d); printf("s:%s,length:%d\n",d,len(d)); return 0; }。
相关文章推荐
- 几个常见字符串函数的实现
- C/C++面试之算法系列--几个典型的内存拷贝及字符串函数实现
- 几个典型的内存拷贝及字符串函数实现
- 几个典型的内存拷贝及字符串函数实现
- 几个典型的内存拷贝及字符串函数实现
- 常用的几个字符串函数的使用和实现
- 几个典型的内存拷贝及字符串函数实现
- 常见几个字符串函数实现代码
- 几个典型的内存拷贝及字符串函数实现
- 几个字符串函数的实现
- 自己实现的C语言string.h 头文件的字符串函数与几个内存操作函数
- 几个常见字符串函数的实现
- 几个典型的内存拷贝及字符串函数实现
- 几个典型的内存拷贝及字符串函数实现
- Android开发实现连续跳转几个界面后在最后一个界面完美跳回最初的界面
- Linux 下几个文件操作命令的代码实现
- [推荐]Android消息处理机制(Handler、Looper、MessageQueue与Message) Android是消息驱动的,实现消息驱动有几个要素: 消息的表示:Message 消息
- 字符串函数实现
- Mybatis 实现不确定修改几个字段的修改方法(动态语句set、if实现),避免修改时其它没被修改的字段变为null
- 使用java实现几个递归函数