我想在C语言中使用一个简单的链表,但是我有一些问题。
我创建了一个结构节点

struct node{
    int value;
    struct node *next;
};

并用以下代码编写
struct node *root;
struct node *conductor;

root = (struct node *)malloc(sizeof(struct node));
root->next = 0;
conductor = root;

root->value = 1;

if ((root->value) == 1)
    LED_GREEN = 1;
//LED_GREEN = 1;

我在一个嵌入式系统上运行它,只是比较根节点的值我想,LED会亮,但不是。有人知道了,为什么没有按预期工作?

最佳答案

我自己解决了这个问题,但当我发布解决方案时,可能对类似的问题有帮助。这个问题是通过在我的IDE的项目选项中更改堆大小来解决的。大小设置为0,因此malloc无法分配内存。

关于c - 链表的意外行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34899320/

10-15 06:13
查看更多