定义一个函数,接受一个字符串作为参数,然后返回该字符串的反转版本。例如,输入“hello”,返回“olleh”。
时间: 2024-10-14 19:07:17 浏览: 45
一个字符串反转函数可实现字符串倒序
你可以使用C语言编写一个简单的函数来实现字符串的反转。这里是一个示例:
```c
#include <stdio.h>
#include <string.h>
// 函数声明,接受一个字符串并返回反转后的字符串
char* reverseString(const char *str);
// 实现反转函数,通过两个指针分别指向字符串首尾交换字符
char* reverseString(const char *str) {
if (str == NULL || strlen(str) <= 1) { // 检查空字符串或单字符情况
return str;
}
char reversed[strlen(str) + 1]; // 为了容纳可能的空字符,加1
char *reversed_ptr = reversed; // 初始化反转字符串的指针
// 从后往前遍历原字符串并添加到新字符串
for (const char *ptr = str + strlen(str) - 1; ptr >= str; ptr--) {
*reversed_ptr++ = *ptr;
}
*reversed_ptr = '\0'; // 结束字符串
return reversed;
}
int main() {
const char input[] = "hello";
char *result = reverseString(input);
printf("Original string: %s\n", input);
printf("Reversed string: %s\n", result); // 输出: Reversed string: olleh
free(result); // 释放内存
return 0;
}
```
这个函数首先检查输入是否为空或只有一个字符,直接返回原字符串。然后创建一个新的字符串,从原字符串的末尾开始向前遍历,逐个字符添加到新字符串。最后返回反转后的字符串,并在主函数中演示了如何使用这个功能。
阅读全文