在下面的例子中,在賦值時取消引用不會顯示malloc的任何錯誤,怎麼回事?爲什麼解除引用與malloc的行爲不同?
#include <stdio.h>
#include <stdlib.h>
int main() {
int *p;
printf("%d", &p);
int a = 10;
*p = a;
printf("%d", *p);
free(p);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main() {
int *p = (int*)malloc(sizeof(int));
printf("%d", &p);
int a = 10;
*p = a;
printf("%d", *p);
free(p);
return 0;
}
請幫助我真的很困惑在指針 – harry
請格式化代碼引導與4個空格的行。還要非常小心地正確格式化代碼,以便易於遵循。我在編輯中對此進行了通過,但是您可以仔細檢查一下,看看我是否錯過了任何內容。 – jaydel
請不要大喊標題 –