C语言中,反转字符串有三种方法:使用字符串数组、使用指针以及使用库函数 strrev。

如何使用 C 语言反转输出字符串
开门见山:
C 语言可以通过多种方法反转字符串,最常见的方法是使用字符串数组和 for 循环。
详细解答:
1. 使用字符串数组:
立即学习“C语言免费学习笔记(深入)”;
- 创建一个新数组来存储反转后的字符串。
- 使用 for 循环从字符串末尾开始,逐个字符地复制到反转后的数组中。
示例:
#includeint main() { char str[] = "Hello"; int i, len = strlen(str); char rev[len + 1]; // +1 for null character // 反转字符串 for (i = 0; i < len; i++) { rev[i] = str[len - i - 1]; } // 添加 null 字符 rev[len] = '\0'; // 输出反转后的字符串 printf("反转后的字符串:%s\n", rev); return 0; }
2. 使用指针:
- 使用两个指针,一个指向字符串的开头,另一个指向字符串的结尾。
- 交换指针指向的字符,直到它们相遇。
示例:
#includeint main() { char str[] = "Hello"; char *ptr1 = str, *ptr2 = str + strlen(str) - 1; // 指向字符串的结尾 // 交换字符 while (ptr1 < ptr2) { char temp = *ptr1; *ptr1++ = *ptr2; *ptr2-- = temp; } // 输出反转后的字符串 printf("反转后的字符串:%s\n", str); return 0; }
3. 使用库函数:
- 使用
strrev库函数,它直接反转字符串。
示例:
#includeint main() { char str[] = "Hello"; // 反转字符串 strrev(str); // 输出反转后的字符串 printf("反转后的字符串:%s\n", str); return 0; }











