C语言中如何使用指针实现字符串反转

```c

#include <stdio.h>

#include <string.h>

void reverse(char* str) {

int length = strlen(str);

char *start = str;

char *end = str + length - 1;

char temp;

while (start < end) {

temp = *start;

*start = *end;

*end = temp;

start++;

end--;

}

}

int main() {

char str[] = "Hello, World!";

printf("Before reverse: %s

", str);

reverse(str);

printf("After reverse: %s

", str);

return 0;

}

```

在这个例子中,我们定义了一个reverse函数,它接受一个字符串(字符数组)作为参数。然后,我们创建了两个指针,一个指向字符串的开始,另一个指向字符串的结束。我们在循环中交换这两个指针所指向的字符,然后将开始指针向前移动一位,将结束指针向后移动一位,直到两个指针相遇。这样,我们就实现了字符串的反转。

相关推荐
是main不是漫26 分钟前
【数据结构--双向链表】从前有个节点,它想要两头讨好…
c语言·数据结构·链表
晚烛41 分钟前
CANN 自定义算子开发:Ascend C 编程接口与算子实现完整指南
c语言·开发语言·人工智能·python
Byte Wizard42 分钟前
自定义类型:结构体
c语言·开发语言
王璐WL9 小时前
【C语言入门级教学】函数的概念2
c语言·数据结构·算法
古城小栈11 小时前
Rust 调用 C 语言库 实战指南(企业级)
c语言·开发语言·rust
枕星而眠12 小时前
Linux 线程:原理、属性、实战与面试避坑
linux·运维·c语言·面试
码完就睡13 小时前
C语言——动态内存
c语言·开发语言
arronKler17 小时前
MySQL命令行导出数据库
c语言·数据库·mysql
我命由我1234518 小时前
Android Framework P3 - MediaServer 进程、认识 ServiceManager 进程
android·c语言·开发语言·c++·visualstudio·visual studio·android runtime
三易串口屏18 小时前
实验1 实时显示单片机的参数(整数、小数、中文 系统指令方式)
c语言·单片机·嵌入式硬件·mongodb·串口屏·三易串口屏