gpt4 book ai didi

c - 从文件中读取数据到C中的结构

转载 作者:太空宇宙 更新时间:2023-11-04 00:56:40 25 4
gpt4 key购买 nike

假设我使用 fread 函数将数据从文件读取到结构。数据究竟是如何读取到结构中的?假设我的结构具有以下内容:

Int x;
Char c;

读取的前 4 个字节会进入 x 而下一个字节会进入 c 吗?如果我读取的字节数多于我的结构中的元素可以容纳会发生什么?

最佳答案

Will the first 4 bytes read go into x and the next byte go into c?

是的,除非你的编译器有非常奇怪的填充规则(例如,每个成员必须是 8 字节对齐的)。并假设 Int 是 4 个字节,Char 是 1 个字节。

And if i read in more bytes than the elements in my struct can hold what's gonna happen?

这是未定义的行为,除非超长写入可能不超过 sizeof(YourStruct) 在这种情况下,您只会写入填充字节(在很多平台上会在 char 之后 3 个字节)。

关于c - 从文件中读取数据到C中的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58670615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com