声明BufferData Data [16] = {0}是什么意思
发布时间:2020-12-16 09:20:57 所属栏目:百科 来源:网络整理
导读:我正在通过一个C dll并遇到了一个结构 BufferData{int Len; int Ant; unsigned char Data[512]} 然后通过创建数组初始化该结构 BufferData Data[16] = {0} 鉴于Data是一个结构数组,我不确定这是做什么的. 解决方法 这是C初始化器的一个怪癖. C没有“半初始化
我正在通过一个C dll并遇到了一个结构
BufferData{int Len; int Ant; unsigned char Data[512]} 然后通过创建数组初始化该结构 BufferData Data[16] = {0} 鉴于Data是一个结构数组,我不确定这是做什么的. 解决方法
这是C初始化器的一个怪癖. C没有“半初始化”变量;变量未初始化或完全初始化.
如果初始化程序指定的值少于结构或数组具有成员的值,则所有剩余的元素将以递归方式隐式初始化为零. 因此{0}是一个通用初始化器:它将第一个字段(无论可能是什么)设置为0,所有剩余字段(如果有)也自动设置为0. 在您的情况下,第一个字段是Data的第一个元素的第一个成员,即我们显式设置Data [0] .Len并依赖于其他所有内容的零初始化. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- vb6.0 api 获取和设置计算机名 获取 鼠标位置坐标
- oracle创建,查看用户和角色,用户角色赋权
- 电话号码 手机号码 等准确详细 正则表达式
- ruby-on-rails – 使用rails 3对rspec更新操作的问题
- ORA600[13011]表与索引数据逻辑错误分析及解决
- ruby-on-rails – 已安装的gem但无法加载此类文件
- C# -- HttpWebRequest 和 HttpWebResponse 的使用
- postgresql – 如果update值为null,则不更新列
- xml – Xamarin Studio:重建项目错误并显示错误:“XamlCT
- 数组 – Visual Basic 6数组作为参数