问题描述
问题解答
回答1:指针使用之前一定要初始化
int main() { ArrayListPtr list; Init(list); /* //两种改法 ArrayList list; Init(&list) // 以下的操作都不是指针,访问成员要改为`.`//或者 ArrayListPtr list = (ArrayListPtr)malloc(sizeof(ArrayList)); Init(list); */printf('length: %dn', list->length); printf('size: %dn', list->size); return 0;}回答2:
第一个list是一个脏指针,没有赋nullptr,也没有指向任何合法的内存;第二个list是一个合法的ArrayList地址;