【发布时间】:2021-12-02 18:41:30
【问题描述】:
我对 C 非常陌生,我正在学习使用结构和指针,但我似乎无法弄清楚我在这里做错了什么。所以我试图找到每次调用主函数时都会重置的字典的大小。当我尝试手动运行代码时,它会说分段错误。有 2 个文件被测试,一个是字典结构和所有函数,一个是主文件。任何帮助将不胜感激。
我在 dict 文件中的代码:
size_t dict_size (const dict_t* dict) {
dict_list_t* el = dict->head;
size_t dict_ct = 0;
while(el){
dict_ct++;
el = el->next;
}
return dict_ct;
}
以及主文件中的代码:
else if(strncmp(cmd, "siz", 3) == 0) {
size_t* size =(size_t*) dict_size(dict);
printf("%ld\n", *size);
}
【问题讨论】:
-
从
main()粘贴的代码中删除所有*。它应该有帮助 -
@tstanisl 谢谢!