#include<stdio.h>
#include<string.h>
#include<math.h>
void main()
{
char a[20]={0};
int i;
for(i=0;a[i]!="\0";i++);
i--;
for(;a[i]!="*";i--);
i++;
a[i]=0;
puts("%s",a);
}
比较的是字符,不是字符串,使用单引号括起来,'\0' '*' ;
然后第一个for循环,a[i]就已经'\0'了,导致for循环执行完后i == 0,然后你在i--,i == -1;第二个for训话,在调用a[-1] != '*',数组越界了。
用单引号别用双引号,因为是字符