c语言中部分库函数的自我实现
来源:互联网 发布:java中point的用法 编辑:程序博客网 时间:2024/05/21 14:54
在c语言中的字符串函数中,一部分库函数需要经常使用,当然,在与c相关工作的笔试面试中也经常出现,下面就来说说这些函数的作用及其函数的实现。
今天说到在面试及笔试中可能会碰到的,并且其实现也是很有必要的的函数主要有:strlen、strcat、strcpy、strcmp、strdel、strchr六个函数。
一、strlen
头文件:#include
/*strlen函数的实现*/#include<stdio.h>int main(){ int i = 0; char *p,str[100]; p = str; printf("Please input str:"); scanf("%[^\n]",str); while(*p != '\0') { i++; p++; } printf("The result is %d\n",i); return 0;}
注意事项:有些同学对sizeof与strlen的功能不是很了解,下面做个简单区分(面试笔试也会出现哦)
sizeof与strlen的区别:
a)sizeof表示括号中所计算的对象在内存上所占字节数,strlen计算的是括号中所加字符串的长度,不包含’\0’
b)sizeof是关键字,strlen是函数
二、strcat
头文件:#include
#include <stdio.h>int main(){ char str1[128]; char str2[128]; printf("请输入第一个字符串:"); scanf("%[^\n]",str1); getchar(); printf("请输入第二个字符串:"); scanf("%[^\n]",str2); char *p = str1; char *q = str2; while(*p != '\0') { p++; } while(*q != '\0') { *p++ = *q++; } *p = '\0'; printf("%s\n",str1); return 0;}
注意事项:拼接的字符串所占空间大小应小于dest指向空间的大小
三、strcmp
头文件:#include
#include<stdio.h>int main(){ char *p = a,*q = b; printf("Please input dest string:"); scanf("%[^\n]",a); getchar(); printf("Please input src string:"); scanf("%[^\n]",b); printf("Copy src to dest:\n"); while(*(p++) = *(q++)); *p = '\0'; printf("%s\n",b); return 0;}
注意事项:1)dest指向的空间足够大
2)复制过程中,src指向的’\0’也会赋值给dest
3)strcpy使用时,只是覆盖了dest的内容,而非清除覆盖了dest的空间.
四、strcmp
头文件:#include
#include<stdio.h>int main(){ int m; char a[128],b[128]; printf("Please input s1 string:"); scanf("%[^\n]",a); getchar(); printf("Please input s2 string:"); scanf("%[^\n]",b); char *p = a,*q = b; while(*p == *q && *p != '\0' && *q != '\0') { p++; q++; } if (*p =='\0' && *q == '\0') { m = 0; } if(*p > *q) { m = 1; } if(*p < *q) { m = -1; } printf("m = %d\n",m); return 0; }
注意事项: 1)按对应位置的字符的ASCII值比较
2)s1与s2互换位置,结果不同
五、strchr
头文件:#include
include
阅读全文
0 0
- c语言中部分库函数的自我实现
- C++中部分库函数的源码
- c语言中部分限制字符函数的实现strncmp,strncat,strncpy,strstr,strrstr
- c语言中部分字符串操作函数
- C语言库函数的实现
- 部分库函数的自我实现
- STL中部分函数的实现
- C语言实现库函数
- C语言库函数strstr的实现
- C语言一个库函数的实现
- C语言字符串库函数的实现
- C语言字符串库函数的实现
- C语言字符串库函数的实现
- C语言字符串库函数的实现
- C语言字符串库函数的实现
- C语言字符串库函数的实现
- C语言字符串库函数的实现
- 实现C语言字符串操作的库函数
- Uva12545
- 管理的封闭原理
- 测试工程师基础知识
- RecyclerView条目动画,超简单,一行代码搞定
- spring boot thymeleaf的使用
- c语言中部分库函数的自我实现
- 常用DOS命令
- 光纤激光器概述
- 浮动
- 非常可乐(HDU-1495)
- 在java中调用C#编写的dll
- Oracle高水位线
- c语言之单链表
- python中需要注意的一些地方