C – struct变量是指针吗?
发布时间:2020-12-16 09:21:04 所属栏目:百科 来源:网络整理
导读:我搜索了很多,但我找不到任何关于此的话题.我的问题是:struct变量是指针吗?如果每个输入都存储在struct members的地址中,那么struct变量用于什么? 这是我用来检查struct变量的代码,当我打印存储在变量中的内容时,它给了我另一个地址,但我无法确定该地址的
我搜索了很多,但我找不到任何关于此的话题.我的问题是:struct变量是指针吗?如果每个输入都存储在struct members的地址中,那么struct变量用于什么?
这是我用来检查struct变量的代码,当我打印存储在变量中的内容时,它给了我另一个地址,但我无法确定该地址的用途. 这是我的代码及其输出: struct test { int a; int b; char c; }; int main() { struct test f; printf("%u",&f); printf("n%d",f); printf("n%u",&f.a); printf("n%u",&f.b); } 输出: 6487616 6487600 6487616 6487620 解决方法
简答:不.
长版本:上述程序中的所有print语句都会调用未定义的行为,因为提供的参数与转换说明符不匹配. 要详细说明,要打印指针,您需要使用%p转换说明符,并为参数使用强制转换为void *. 结构变量没有通用(一对一排序)格式说明符.您需要选择具有相应格式说明符的单个成员(或其成员),并将其作为参数传递. 也就是说,关于第一个成员和访问,
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |