代码实现
思想:静态初始化字符数组存储字符串数据,再利用指针交换对应前后位置元素,进行输出即可。(程序中已详细注释,这里不再重复讲解)
//导入头文件
#include <stdio.h>
//字符交换函数
void reverse(char* s){
int len = 0;//记录长度
char* p = s;//指针标记当前数据
while (*p != 0){ len++; p++; } //统计长度
for(int i=0;i<=len/2 -1;i++){ // 交换字符
char c;//中间变量
c = *(s + i);
*(s + i) = *(s + len - 1 - i);
*(s + len - 1 - i) = c;
}
}
//主函数
int main(){
char s[] = "have a good time";//定义并初始化字符数组
printf("初始字符串为:%s\n", s);//输出结果
reverse(s);//字符串逆序
printf("逆序后为:%s\n", s);//输出结果
return 0;
}