c语言字符串逆序指针
时间: 2024-11-29 18:15:11 浏览: 24
字符串逆序-使用C语言+递归实现字符串逆序.zip
在C语言中,要实现字符串逆序,可以利用指针技巧。你可以创建两个指针,一个指向字符串的开始(通常称为`str`),另一个指向字符串的结束(即第一个空字符'\0')。然后,通过交换这两个指针所指向的字符,逐步向中间移动,直到它们相遇。
下面是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
void reverse_string(char* str) {
if (str == NULL || *str == '\0') { // 验证输入是否为空
return;
}
char start = *str; // 初始化起始指针
char end = *(str + strlen(str) - 1); // 初始化结束指针
while (start != end) { // 当起始指针小于结束指针时
char temp = start; // 临时保存当前字符
start = start + 1; // 起始指针右移一位
end = end - 1; // 结束指针左移一位
*str++ = temp; // 将当前字符放到原位置的前面
}
}
int main() {
char str[] = "Hello, World!";
printf("Original string: %s\n", str);
reverse_string(str);
printf("Reversed string: %s\n", str);
return 0;
}
```
运行这个程序,你会看到原始字符串"Hello, World!"被逆序成了 "!dlroW ,olleH"。
阅读全文