c语言截取指定位置字符串的函数
时间: 2023-11-27 07:03:08 浏览: 553
C#字符串的截取函数用法总结
5星 · 资源好评率100%
在C语言中,可以使用库函数`strncpy()`或`memcpy()`来截取指定位置的字符串。
方法一:使用`strncpy()`函数
函数原型如下:
```c
char *strncpy(char *dest, const char *src, size_t n);
```
其中,`dest`表示目标字符串的首地址,`src`表示源字符串的首地址,`n`表示截取的长度。
使用该函数可以实现截取指定位置的字符串,例如:
```C
char str1[] = "Hello, world!";
char str2[6];
strncpy(str2, str1 + 7, 5);
str2[5] = '\0';
printf("%s\n", str2);
```
其中,`strncpy(str2, str1 + 7, 5)`表示将`str1`中从第7个字符开始的5个字符复制到`str2`中,`str2[5] = '\0'`表示在`str2`的第6个字符处添加一个空字符,以确保`str2`是一个完整的字符串。
方法二:使用`memcpy()`函数
函数原型如下:
```c
void *memcpy(void *dest, const void *src, size_t n);
```
其中,`dest`表示目标字符串的首地址,`src`表示源字符串的首地址,`n`表示截取的长度。
使用该函数可以实现截取指定位置的字符串,例如:
```C
char str1[] = "Hello, world!";
char str2[6];
memcpy(str2, str1 + 7, 5);
str2[5] = '\0';
printf("%s\n", str2);
```
其中,`memcpy(str2, str1 + 7, 5)`表示将`str1`中从第7个字符开始的5个字符复制到`str2`中,`str2[5] = '\0'`表示在`str2`的第6个字符处添加一个空字符,以确保`str2`是一个完整的字符串。
阅读全文