阅读量:0
C语言中可以使用指针来实现字符串逆置。下面是一种实现方式:
#include <stdio.h> #include <string.h> void reverseString(char *str) { int length = strlen(str); char *start = str; // 指向字符串的起始位置 char *end = str + length - 1; // 指向字符串的结束位置 // 交换起始位置和结束位置的字符,并同时向中间移动指针 while (start < end) { char temp = *start; *start = *end; *end = temp; start++; end--; } } int main() { char str[] = "Hello, World!"; printf("Original string: %s\n", str); reverseString(str); printf("Reversed string: %s\n", str); return 0; }
运行结果:
Original string: Hello, World! Reversed string: !dlroW ,olleH
在上述代码中,reverseString
函数接受一个指向字符串的指针,通过使用两个指针start
和end
来交换字符串中对应位置的字符。初始时,start
指向字符串的起始位置,end
指向字符串的结束位置。然后通过循环将start
指针向右移动一位,将end
指针向左移动一位,并交换它们所指向的字符,直到start
和end
指针相遇为止。最后,字符串中的字符就被逆置了。