那是你的那个temp指针的问题,他都没有具体的指向,你怎么能给他赋值呢?
你要就用数组。
或者指向数组的指针!
int main()
{
char *str="ABCD";
char *temp;
int i = strlen(str);
int j = 0;
printf("%d\n", i);
while(i > 0)
{
temp[j] = str[i-1];
i--;
j++;
}
temp[j]='\0';/*这里加上这句,这样才能表示字串结束了*/
printf("%s\n",temp);
}