C++substr函数
时间: 2023-11-05 21:53:19 浏览: 118
在C语言中,没有内置的substr()函数。然而,你可以借助一些其他的方法来实现类似的功能。一种常见的方法是使用字符数组和循环来截取字符串的一部分。
下面是一个示例代码,演示了如何在C语言中截取字符串的一部分:
```c
#include <stdio.h>
void substr(const char *str, int start, int length, char *result) {
int i;
for (i = 0; i < length && str[start + i != '\0'; i++) {
result[i = str[start + i];
}
result[i = '\0';
}
int main() {
const char *str = "Hello, world!";
int start = 7;
int length = 5;
char result[length + 1];
substr(str, start, length, result);
printf("Substring: %s\n", result);
return 0;
}
```
在这个例子中,substr()函数接收一个字符串、起始位置、长度和一个结果数组作为参数。它使用一个循环来遍历原始字符串,将指定位置开始的指定长度的字符复制到结果数组中,并在最后添加一个终止符号 '\0'。最后,我们打印出截取得到的子字符串。
请注意,在使用这种方法时,你需要确保结果数组足够大,以容纳截取的子字符串。同时,你也需要检查起始位置和长度是否在有效范围内,以避免访问越界。
阅读全文