C语言字符串反转 argv 目前可以编译但是无法得出想要的结果?

#include
#include

#define MAXN 1000
void reverse(char* str)
{
char* p = str + strlen(str)-1;
char temp;
while(str<p)
{
temp=*p;
*p--=*str;
*str++=temp;
}
}

int main(int argc, char *argv[])
{
int i;
printf("File name is %s\n",argv[0]);
printf("Totally input %d parameters.\n",argc-1);
for(i=1; i<argc; i++)
{
reverse(argv);//1对字符串进行翻转
printf("argv[%d] = %s\n",i, argv[i]);
}

return 0;

}


```![图片说明](https://img-ask.csdn.net/upload/201910/10/1570639143_711695.png)

这是我的题目要求:
 请编写代码,实现输出当前程序文件名、参数的个数,并将输入的参数字符串反转输出。
    例:编译好之后运行 ./a.out abcde 12345,则输出以下内容:
File name is a.out.
Totally input 2 parameters.
edcba
54321 


百度了很多次  都尝试了 大部分都可以编译成功 但是无法反转  我的基础比较差求各位大神看看代码哪里有问题

1个回答

reverse(argv);//1对字符串进行翻转
->
reverse(argv[i]);//1对字符串进行翻转

tabii
tabii 可以了 !!谢谢你!!太感谢了
4 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问