我有点困惑什么时候应该为指针使用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));
我必须为空指针恶意移动吗?
答案是否定的。在计算中,空指针保留了一个值,用于指示指针不引用有效对象。 NULL
是分配给指针的值,这意味着它们不引用有效对象。只需NULL
值分配给指针即可。
int *ptr=NULL: