C语言 字符串反序存放
时间: 2024-11-21 15:24:04 浏览: 27
在C语言中,字符串实际上是一个字符数组,为了实现字符串的反序存放,你可以采用以下步骤:
1. 首先,定义一个指向字符串首地址的指针,然后获取字符串长度,可以使用`strlen()`函数。
```c
char str[] = "Hello, World!";
int len = strlen(str) - 1; // 减一是因为strlen会计算结束符'\0'
```
2. 定义另一个指针,从字符串的末尾开始(即`str+len`),并使用两个指针同时向中间移动,依次将字符交换位置。
```c
char temp;
for (int i = 0; i < len / 2; i++) {
temp = str[i];
str[i] = str[len - 1]; // 右移字符
str[len - i - 1] = temp; // 左移字符
}
```
3. 最后,记得在字符串末尾添加终止符`\0`,因为C语言中的字符串实际上是字符数组,结尾需要这个标记表示字符串的结束。
```c
str[len] = '\0';
```
完整的代码示例:
```c
#include <stdio.h>
#include <string.h>
void reverseString(char* str) {
int len = strlen(str) - 1;
char temp;
for (int i = 0; i < len / 2; i++) {
temp = str[i];
str[i] = str[len - i - 1];
str[len - i - 1] = temp;
}
str[len] = '\0'; // 添加终止符
}
int main() {
char str[] = "Hello, World!";
printf("Original string: %s\n", str);
reverseString(str);
printf("Reversed string: %s\n", str);
return 0;
}
```
阅读全文
相关推荐
![c](https://img-home.csdnimg.cn/images/20250102104920.png)
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)