最近在学数组和指针,老师让我们输入一串字符串并使其反向储存,我编写了如下代码但是报错了,请问我应该怎么做,我错在哪?
#include<stdio.h>
void zhuan(char *a,int b)
{
char m[b];
int n=0;
while(b>=0)
{
m[n]=*a[b];
n++;
b--;
}
b=0;
while(*a[b]!='\0')
{
*a[b]=m[b];
b++;
}
}
void main()
{
int i=0,b,k;
char s[100],*str1[100];
scanf("%s",&s);
while(s[i]!='\0')
{
str1[i]=&s[i];
i++;
}
zhuan(str1,i);
for(k=0;k!=0;k++)
printf("%c",*str1[k]);
}