#include<stdio.h>
#include<string.h>
int main(int argc,char *argv[])
{
char string[]="#";
printf("%s\n",argv[1]);
printf("%s\n",argv[2]);
printf("%s\n",argv[3]);
strcat(argv[1],string);
printf("argv[1] is %s\n",argv[1]);
printf("argv[2] is %s\n",argv[2]);
printf("argv[3] is %s\n",argv[3]);
return 0;
}
strcat() を使用して argv[1] の最後に何かを追加すると、argv[2] が失われます ( strlen(argv[2]) は、 strcat を使用した後に 0 に変更されます)。ただし、argv[3] には変更がありません。 。どうして???