在C++中,malloc
函數被定義為 void* malloc (size_t size);
,它會嘗試分配指定大小的內存,并返回一個指向該內存塊的指針。如果 malloc
分配內存失敗,則返回 nullptr
。因此,可以通過檢查 malloc
的返回值是否為 nullptr
來判斷內存分配是否失敗。以下是一個示例代碼:
#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;
// 使用分配的內存
free(ptr);
}
return 0;
}