字符串的修改
#include <stdio.h>void fun(char*p);
int main(){
char *p="ADFFDHJYET";
fun(p);
return 0;
}
void fun(char*p){
char b[45];
int n=0,k=0;
for(;*(b+n)=*p;){
n++;
if(n%3==0){b[n]=' ';
k++;
printf("%c%d",b[n],k);}
p++;
if(*p=='\0') break;
}
printf("\nb[3]=%c",b[3]);
}
运行结果是:
空格1空格2空格3
b[3]=F
为什么会这样?明明把字符修改了的,为什么结果还是F?