虽然此代码有效:
char * k = "asd";
char * j = malloc(sizeof(char) * 3);
memmove(j,k,3);
printf("%s",j);
而代码给出错误:
char * k = "asd";
char * j = malloc(sizeof(char) * 3);
memmove(k,k+1,3);
printf("%s",k); // output should be "sd"
我想错了吗?为什么它会出错?我打算用它来删除多个空格(“aaa.......bbb”(点是空格)->“aaa bbb”)
谢谢你。