示例代码如下:
#include
#include
#include
void reverseStr(char *str)
{
int length;
char *p1;
char *p2;
length = strlen(str);//获取字符串长度
p1 = str;//p1指向字符串首地址
p2 = str + length - 1;//p2指向字符串尾地址
if (str == NULL)
{
printf("空指针错误!");
return ;
}
while (p1 < p2)//当p1地址小于p2地址时执行循环
{
char c = *p1;
*p1 = *p2;//完成指针指向地址的值的交换
*p2 = c;
p1++;//交换完毕后p1指针指向下一个字符地址
p2--;//交换完毕后p2指针指向上一个字符地址
}
}
int main()
{
char str1[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char str2[] = "0123456789";
//调用函数执行
reverseStr(str1);
reverseStr(str2);
//打印输出结果
printf("反转后str1为:%s\n", str1);
printf("反转后str2为:%s\n", str2);
system("pause");
return 0;
}程序执行结果:
反转后str1为:ZYXWVUTSRQPONMLKJIHGFEDCBA
反转后str2为:9876543210
请按任意键继续. . .