我有这个代码:
//function to delete the occurence of c in s
void squeeze(char s[], int c) {
int i,j;
for(i=j=0;s[i]!='\0';i++)
if(s[i]!=c)
s[j++]=s[i];
s[j]='\0';
}
//function to concatenate string
void strca(char c[],char b[]){
int i,j;
i=j=0;
while(c[i]!='\0')
i++;
c[i++]=' ';
while((c[i++]=b[j++])!='\0')
;
}
现在当我调用 main() 中的函数时
int main(void){
1 char test[]="carmakarchile";
2 //squeeze(test,'a');
3 //printf("%s\n",test);
4 char f[]="Magnificent";
5 char n[]="King Rex";
6 strca(f,n);
7 squeeze(test,'a');
8 printf("%s\n",test);
9 printf("%s",f);
}
给出操作:
King Rex Magnificent King Rex
同时删除第 2 行和第 3 行中的注释行并在第 7 行和第 8 行添加注释给了我:
crmkrchile Magnificent King Rex
我只想知道为什么以及如何产生差异?提前致谢