c - 无法为结构成员指针赋值
问题描述
我试图在 C 中的这个函数中返回一个服务器结构指针。当我编译这个代码时没有问题,但是在执行过程中,行 test->port 导致了 AddressSanitizer 问题。
---头文件---
struct gfserver_t{ //fxw
int port;
int max_npending;
};
---c 文件---
gfserver_t* gfserver_create(){
struct gfserver_t* test;
memset(&test, 0, sizeof(test));
test->port=22;//==30022==ERROR: AddressSanitizer: SEGV on unknown address
return test;
}
我尝试了 gdb,查找 AddressSanitizer 的原因(取消引用空指针),以及如何设置指针结构成员,但仍然不明白我是如何遇到这个问题的。任何指针都会很棒。
解决方案
推荐阅读
- reactjs - 我应该如何减少这种反应本机代码?
- python - Luhn 的算法适用于除 AMEX 卡 (Python3) (cs50/pset6/credit) 之外的所有信用卡
- flutter - ShrinkWrap Horizontal ListView inside Column with 'mainAxisSize: MainAxisSize.min' 给出错误:'constraints.hasBoundedHeight': is not true
- eloquent - 在 laravel 中删除包时从表中删除列
- excel - 想要将列表框中的信息传输到主表中的单独行中
- python - PHP python NLTK 集成
- bash - 在保留目录修改日期的同时递归删除 .DS_Store 和 ._.DS_Store
- python - python cytpes创建回调函数 - 分段错误(核心转储)
- postgresql - 从 azure 容器实例备份 postgresql
- r - 如何根据条件将 R 数据框行拆分为多行?