[C语言] 提取子字符串
程序员文章站
2022-08-09 19:35:03
编写一个函数,它从一个字符串中提取一个子字符串。函数原型如下:
int substr(char dst[], char src[],int start, int len)
{}
目标是:从...
编写一个函数,它从一个字符串中提取一个子字符串。函数原型如下: int substr(char dst[], char src[],int start, int len) {} 目标是:从 src 数组起始位置向后偏移 start个字符的位置开始,最多复制 len 个非nul字符到 dst数组。在复制完毕之后,dst 数组必须以nul字节结尾。 函数的返回值是存储于 dst 数组中的字符串的长度。 代码实现: #include <stdio.h> #include <assert.h> int substr(char dst[], char src[], int start, int len) { assert(dst); assert(src); int ret = 0; while (start) { src++; start--; } if (strlen(src) < len) { len = strlen(src); } ret = len; while (len) { *dst++ = *src++; len--; } *dst = '\0'; return ret; } int main() { char *p = "bit-tech"; char arr[10]; char array[10] = {0}; int ret = substr(arr, p, 4,5); printf("%d\n", ret); printf("%s\n", arr); system("pause"); return 0; }
上一篇: C++里的继承和多态(上)
推荐阅读
-
C语言的字符串处理函数strlen()
-
C语言的字符串输出fputs()函数
-
C语言判断字符串是否为数字
-
C语言笔记 08_函数指针&回调函数&字符串&结构体&位域
-
C语言代码实现五子棋小游戏
-
C语言编程笔记丨SDS:一个简易动态字符串库
-
C语言——常用标准输入输出函数 scanf(), printf(), gets(), puts(), getchar(), putchar(); 字符串拷贝函数 strcpy(), strncpy(), strchr(), strstr()函数用法特点
-
在字符串中找出第一个只出现一次的字符。经典C语言例题
-
C语言:判断一个字符串是否为另外一个字符串旋转之后的字符串。
-
C语言使用strcmp()函数比较两个字符串的实现