在C中struct的缺省情况下malloc& bool值是多少?

时间:2015-03-20 20:49:13

标签: c struct boolean

当我们尝试将其作为n-> myBool访问时,结构中这个bool的值是多少?我有兴趣知道"默认" bool的值是在为它分配内存之后,但没有为它赋值为true。

#include <stdbool.h>
typedef struct node
{
 bool myBool;
} Node;

void main()
{
 Node* n = malloc(sizeof(Node));
 return;
}

编辑:纠正了代码中的拼写错误(应该是sizeof(Node)而不是sizeof(node)

1 个答案:

答案 0 :(得分:7)

没有默认值。由malloc分配的空间未初始化,并且在向其写入值之前尝试从n->myBool读取将导致未定义的行为。