【发布时间】:2017-07-21 17:33:58
【问题描述】:
如果我有两个结构
typedef struct {
int number_of_lines;
char lines[MAX_CHAPTER_LINES][MAX_STR_SIZE + 1];
} Chapter;
typedef struct {
char name[MAX_STR_SIZE + 1];
int number_of_chapters;
Chapter chapters[MAX_CHAPTERS];
} Book;
我创建了一个章节变量:
Chapter x1;
它的两个成员的值将被初始化为什么?是垃圾吗?还是为零?在我的代码中,int 得到了0,但我的 TA 告诉我这会是垃圾?
另外,如果我要声明一个章节数组:
Chapter chapters[30];
它会被 30 个带有 0/NULL 值元素的结构填充吗?还是用垃圾值元素初始化?
【问题讨论】:
标签: c arrays struct initialization