关于字符串的几个函数
来源:互联网 发布:'匿名短信软件 编辑:程序博客网 时间:2024/04/30 12:43
1、Strcat函数原型如下:
char *strcat(char *strDest, const char *strScr) //将源字符串加const,表明其为输入参数{ char * address = strDest; //该语句若放在assert之后,编译出错 assert((strDest != NULL) && (strScr != NULL)); //对源地址和目的地址加非0断言 while(*strDest) //是while(*strDest!=’\0’)的简化形式 { //若使用while(*strDest++),则会出错,因为++是不受循环 strDest++; //约束的。所以要在循环体内++;因为要是*strDest最后指 } //向该字符串的结束标志’\0’。 while(*strDest++ = *strScr++) //是while((*strDest++ = *strScr++)!=’\0’)的简化形式 { NULL; //该循环条件内可以用++, } //此处可以加语句*strDest=’\0’;有无必要? return address; //为了实现链式操作,将目的地址返回}
以下是在VC6.0中调试的例子,函数名用strcata代替。
#include <stdio.h>#include <assert.h>char *strcata(char *strDest,const char *strScr){ char * address = strDest; assert((strDest != NULL) && (strScr != NULL)); while(*strDest) { strDest++; } while(*strDest++ = *strScr++) { NULL; } return address;}int main(int argc, char *argv[]){ char str1[100]={"i love"}; char str2[50]={"China"}; printf("%s\n",strcata(str1,str2)); return 0;}
2、Strcpy函数原型如下:
char *strcpy(char *strDest, const char *strScr){ assert((strDest != NULL) && (strScr != NULL)); char *address = strDest; while(*strScr) //是while(*strScr != ’\0’)的简化形式; { //此处更简洁的写法是: *strDest++ = *strScr++; // while((*strDest++ = *strSrc++) != '\0') NULL; } *strDest = '\0'; //当strScr字符串长度小于原strDest字符串长度时,如果没有改语句,就会出错了。 return address; }
以下是在VC6.0中调试的例子,函数名用strcpya代替。
#include <stdio.h>#include <assert.h>char *strcpya(char *strDest, const char *strScr){ char *address = strDest; assert((strDest != NULL) && (strScr != NULL)); while(*strScr) { *strDest++ = *strScr++; } *strDest = '\0'; return address;}int main(int argc, char *argv[]){ char str1[100]={"i love"}; char str2[50]={"China"}; printf("%s\n",strcpya(str1,str2)); return 0;}
3、Strcmp函数原型如下:
int strcmp (const char *str1,const char *str2){ int len = 0; assert((str1 != '\0') && (str2 != '\0')); while(*str1 && *str2 && (*str1 == *str2)) { str1++; str2++; } return *str1-*str2;}
以下是在VC6.0中调试的例子,函数名用strcmpa代替。
#include <stdio.h>#include <assert.h>int strcmpa (const char *str1,const char *str2){ int len = 0; assert((str1 != '\0') && (str2 != '\0')); while(*str1 && *str2 && (*str1==*str2)) { str1++; str2++; } return *str1-*str2;}int main(int argc, char *argv[]){ char str1[100] = {"i love"}; char str2[50] = {"China "}; printf("%d\n",strcmpa(str1,str2)); return 0;}
4、Strlen函数原型如下:
int strlen(const char *str){ int len = 0; assert(str != NULL); while(*str++) { len++; } return len;}
以下是在VC6.0中调试的例子,函数名用strlena代替。
#include <stdio.h>#include <assert.h>int strlena(const char *str){ int len = 0; assert(str != NULL); while(*str++) { len++; } return len;}int main(int argc, char *argv[]){ char str1[100] = {"i love"}; char str2[50] = {"China "}; printf("%d\n",strlena(str1)); return 0;}
0 0
- 关于字符串的几个函数
- 关于字符串的几个有用函数
- 关于几个字符串操作的函数
- 编写关于字符串的几个常用函数
- 几个常考的关于字符串的函数实现
- MFC几个关于字符串处理的全局函数
- MFC几个关于字符串处理的全局函数
- MFC几个关于字符串处理的全局函数
- MFC几个关于字符串处理的全局函数
- 介绍几个程序中关于"路径字符串"的函数
- 介绍几个程序中关于"路径字符串"的函数
- 关于字符串的几个练习题
- 关于字符串的几个常见问题
- 关于字符串的几个算法
- 几个操作字符串的函数
- 几个字符串函数的实现
- 几个字符串函数的实现
- 关于几个函数的使用
- linux下mongodb的安装启动操作
- 安卓actionbar的使用_sqlite的使用
- Android程序 类QQ通知常驻在Notification栏 点击Notification正确回调到之前已经放置在后台的Task中的对应Activity,而不是创建它的一个新实例
- ubuntu常用的部分命令
- browers and html dom 官方解读
- 关于字符串的几个函数
- OpenFOAM中使用字典和IOobject类实现输入输出操作
- get post请求
- 怎么安装mysqlworkbench
- 南京信息工程大学滨江学院
- 每个极客都应该知道的Linux技巧
- spring-data-jpa+hibernate 各种缓存的配置演示
- 一种简化决策树ROC的方法
- pushlets: 反推:10年前作者的描述