流程:
1:定义两个指针,同时指向字符串的首地址;
2:第一个指针通过while循环到字符串的最后一个地址 \0; 再-1到最后一个字母的地址;
3:然后通过循环 ,两个所指向的字符 ,进行交换, 第二个指针的>=第一个指针的数值时 ,循环结束;
4:最后定义一个新的指针,指向字符串首地址 ,puts 输出字符串数组就成功了。
代码如下:
#include<stdio.h>
int main(int argc, const char *argv[])
{
char s[] = "abcdefg";
char *q = s; //第一个指针
char *p; // 第二个指针
char t;
char *d; // 新的指针
p = q;
d = p;
while(*q){
q++;
}
q= q- 1;
while(p < q){
t = *q;
*q = *p;
*p = t;
q--;
p++;
}
puts(d);
return 0;
}
实现结果:
gfedcba