检测节点是否创建成功的c语言代码
时间: 2024-12-09 12:18:24 浏览: 8
在C语言中,检测某个节点是否成功创建通常涉及到动态内存分配的操作,比如链表节点的创建。下面是一个简单的示例,展示了如何检查是否成功分配了结构体,并将其添加到链表中:
```c
#include <stdio.h>
#include <stdlib.h>
typedef struct Node {
int data;
struct Node* next;
} Node;
Node* createNode(int value) {
// 动态分配内存
Node* newNode = (Node*)malloc(sizeof(Node));
if (newNode == NULL) { // 检查内存分配是否成功
printf("Memory allocation failed for node with value %d\n", value);
return NULL; // 分配失败,返回NULL
}
newNode->data = value;
newNode->next = NULL; // 初始化下一个指针
// 成功创建并初始化新节点,返回指向它的指针
return newNode;
}
int main() {
Node* head = createNode(10);
if (head != NULL) {
printf("Node created successfully with value 10\n");
} else {
printf("Failed to create node with value 10\n");
}
return 0;
}
```
在这个例子中,如果`malloc()`返回`NULL`,说明内存分配失败,程序将打印错误消息并返回。反之,如果成功分配,`createNode()`函数将返回一个新的节点。
阅读全文