Aru*_*har 2 c malloc pointers undefined-behavior
所以我只是想问一下,添加注释行时这是一个未定义的行为.虽然没有编译错误,但它们都给出了相同的答案.我想知道有什么不同.地址是否被a的地址覆盖.另外如果有人这样做(即为b分配内存),那将memcpy()是一个很好的解决方案.这可能是一个微不足道的例子,但我想了解其中的区别.
#include <stdio.h>
#include <stdlib.h>
int main()
{
int *a;
int *b;
a=malloc(sizeof(int));
//b=malloc(sizeof(int));
int c=6;
a=&c;
b=a;
printf("%d\n",*b);
return 0;
}
Run Code Online (Sandbox Code Playgroud)