【发布时间】:2019-04-15 02:06:18
【问题描述】:
我正在尝试使用指针 sptr1 和 sptr2 反转字符串,len 给出了输入字符串的正确长度,但字符串没有反转,str1 也没有显示在我的终端上。请提供一些见解
#include<stdio.h>
void main()
{
char str1[10];
char temp;
char *sptr1;
char *sptr2;
int len;
printf("Enter a string:");
scanf("%s",&str1);
sptr1=str1;
sptr2=str1;
while(*sptr1!='\0')
{
sptr1++;
}
len=sptr1-str1;
printf("Length of the string:%d",len);
while(len!=0)
{
temp=*sptr1;
*sptr1=*sptr2;
*sptr2=temp;
sptr1--;
sptr2++;
len=len-1;
}
printf("%s",str1);
}
【问题讨论】:
-
它会产生什么,你真正想拥有什么?
-
先生,我需要将存储在 str1 中的输入字符串在一段时间后反转。即使 str1 的 printf 存在,输出屏幕也只是接受字符串并显示长度
-
看起来你正在反转字符串两次。
标签: c