我想使用malloc并分配内存并检查它是否成功.就像是:
if (!(new_list=(vlist)malloc(sizeof (var_list))))
return -1;
Run Code Online (Sandbox Code Playgroud)
我该如何检查成功?
Eti*_*tel 21
malloc失败时返回空指针.因此,如果您收到的不是null,那么它指向一个有效的内存块.
由于NULL在if语句中求值为false ,因此可以非常直接的方式检查它:
value = malloc(...);
if(value)
{
// value isn't null
}
else
{
// value is null
}
Run Code Online (Sandbox Code Playgroud)
手册页:
如果成功的话,
calloc(),malloc(),realloc(),reallocf(),和valloc()函数返回一个指向分配的内存.如果有错误,则返回NULL指针并设置errno为ENOMEM.
new_list=(vlist)malloc(sizeof (var_list)
if (new_list != NULL) {
/* succeeded */
} else {
/* failed */
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
32696 次 |
| 最近记录: |