在C++中,malloc
函數(shù)被定義為 void* malloc (size_t size);
,它會(huì)嘗試分配指定大小的內(nèi)存,并返回一個(gè)指向該內(nèi)存塊的指針。如果 malloc
分配內(nèi)存失敗,則返回 nullptr
。因此,可以通過檢查 malloc
的返回值是否為 nullptr
來判斷內(nèi)存分配是否失敗。以下是一個(gè)示例代碼:
#include <iostream>
#include <cstdlib>
int main() {
int size = 100;
int* ptr = (int*)malloc(size * sizeof(int));
if (ptr == nullptr) {
std::cout << "Memory allocation failed" << std::endl;
} else {
std::cout << "Memory allocation successful" << std::endl;
// 使用分配的內(nèi)存
free(ptr);
}
return 0;
}