用C语言编写一个打印字符串子串函数
时间: 2024-02-19 22:03:21 浏览: 88
好的,以下是一个用C语言编写的打印字符串子串的函数示例:
```c
#include <stdio.h>
#include <string.h>
void print_substring(char* string, int start, int end) {
int length = strlen(string);
if (start >= length || end > length || start >= end) {
printf("Invalid substring.\n");
return;
}
for (int i = start; i < end; i++) {
printf("%c", string[i]);
}
printf("\n");
}
```
这个函数接受三个参数:字符串本身、子串的起始位置和子串的结束位置。它会先检查传入的参数是否合法,如果不合法则打印错误信息并返回。
如果参数合法,则使用一个循环来遍历字符串中的字符,并打印出从起始位置到结束位置的子串。
例如,对于字符串 `"Hello, world!"`,我们可以调用这个函数来打印出其中的子串 `"world"`:
```c
char string[] = "Hello, world!";
int start = 7;
int end = 12;
print_substring(string, start, end); // 输出 "world"
```
需要注意的是,这个函数并没有为输出的子串添加换行符,因此在输出后面会紧跟着函数的返回值。如果你需要在输出后换行,可以在调用函数时手动添加一个换行符或在函数内部添加一个 `printf("\n")` 语句。
阅读全文