-1
我有點困惑,何時應該爲指針指向malloc空間。任何幫助將非常感激。我必須爲NULL指針的malloc?我什麼時候需要爲malloc指針?
我有點困惑,何時應該爲指針指向malloc空間。任何幫助將非常感激。我必須爲NULL指針的malloc?我什麼時候需要爲malloc指針?
函數malloc
用於在執行程序期間分配一定量的內存。 malloc函數將從堆中請求一塊內存。
我有點困惑,我應該什麼時候malloc空間的指針。
您不必一定要使用malloc
才能使用指針。 malloc
只能在運行時需要動態請求空間時使用。例如,
char arr[20]="Stack";
char *ptr; //It is pointer
ptr = arr;
printf("%s", ptr);
在上述例子中,我還沒有使用malloc
但我仍然可以使用指針ptr
。唯一重要的是指針應指向您打算工作的某個有效內存位置。無論是分配一個變量的地址的指針
int a;
int *ptr=&a;
或者
使用malloc
在運行時申請的內存。
int *ptr=malloc(sizeof(int));
我必須的malloc空指針?
答案是否定的。在計算中,空指針的值保留用於指示指針不引用有效對象。 NULL
是分配給指針的值,這意味着它們不涉及有效的對象。只需將NULL
值分配給指針即可。
int *ptr=NULL:
如果你想指向一段新的內存,你需要malloc。 NULL意味着不指向任何內存,所以不。 – SLaks
指針的'malloc()'空間有點不尋常,無論是否爲NULL。 – EOF
@EOF:只是爲了確保OP瞭解你的評論,你的malloc()空間用於指向指針,而不是指針本身。 –