点击复制后,将打开C知道体验页 | 使用字符串指针作为函数参数讲一个字符串逆用void strinverse (charsrc,chardes)
时间: 2024-02-07 11:02:18 浏览: 93
好的,让我来讲一下如何使用字符串指针作为函数参数来实现字符串逆序的操作。
首先,我们需要定义一个函数,函数名为 `strinverse`,参数包括两个字符指针类型的参数 `charsrc` 和 `chardes`。其中,`charsrc` 是指向原字符串的指针,`chardes` 是指向逆序后的字符串的指针。
函数定义如下:
```
void strinverse(char *charsrc, char *chardes)
{
int len = strlen(charsrc); // 获取字符串长度
for(int i = 0; i < len; i++) {
chardes[i] = charsrc[len - i - 1]; // 将原字符串逆序存放到目标字符串中
}
chardes[len] = '\0'; // 手动添加字符串结尾符
}
```
这个函数的工作原理很简单,就是利用一个循环将原字符串逆序保存到目标字符串中。需要注意的是,我们需要手动在目标字符串的末尾添加一个字符串结尾符 `\0`,以表示字符串的结束。
下面是一个完整的示例程序:
```
#include <stdio.h>
#include <string.h>
void strinverse(char *charsrc, char *chardes);
int main()
{
char str1[] = "hello, world!";
char str2[strlen(str1) + 1];
strinverse(str1, str2);
printf("Original string: %s\n", str1);
printf("Inverse string: %s\n", str2);
return 0;
}
void strinverse(char *charsrc, char *chardes)
{
int len = strlen(charsrc); // 获取字符串长度
for(int i = 0; i < len; i++) {
chardes[i] = charsrc[len - i - 1]; // 将原字符串逆序存放到目标字符串中
}
chardes[len] = '\0'; // 手动添加字符串结尾符
}
```
输出结果为:
```
Original string: hello, world!
Inverse string: !dlrow ,olleh
```
希望能帮到你!
阅读全文