我即将创建一个程序,用于将学生的数据存储在列表中。 我的问题是,如何为struct数组中的每个char字符串分配内存。 我的代码在下面。如果还有其他一些错误,请纠正我。
.jumbotron {
margin: 0px;
height: 380px;
position: relative;
}
/* Main Story */
.main-story {
max-width: 50%;
position: absolute;
right: 0px;
-webkit-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
top: 50%;
padding: 5%;
}
.main-story h2 {
margin-top: 0;
}
答案 0 :(得分:1)
某些元素的引用是错误的:
studentlist[incr]->givenname
应该是:
studentlist[incr].givenname
字符串的分配似乎很好。
您的免费代码需要更改:
free(studentlist);
free(studentlist.givename);
free(studentlist.familyname);
您需要在循环中释放studentlist.givename和studentlist.familyname,然后在结尾处免费获得学生列表:
for(incr = 0; incr < datalen; incr ++){
free(studentlist[incr].givename);
free(studentlist[incr].familyname);
}
free(studentlist);