使用 arm-gcc 3.3.1 在 32 位 pic 上循环
for loop on 32bit pic with arm-gcc3.3.1
我将被低估而被遗忘但是:
这个问题: 被标记为不完整但不是。
用户指出了 gcc-arm-toochain3.3.1 下的一个重复错误的所有元素,并且在使用结构数组时在 32 位图片上更重复(该用户的所有问题都与那些相关)在一个结构中。
这个bug是图片考虑到structure结构中指针的继承作为单个变量名造成的。
当索引的最后一位不为 0 时,缓冲区溢出读取类型错误的值作为 max int 的倍数。
更改代码自:
structure1.structure2[i].var1 = blabla;
来自
structure2_ * ptr = NULL;
ptr = &structure1.structure2[i];
ptr->var1 = blabla;
将立即修复它(示例在 keil3.0 和 windows xp 下使用 arm-gcc-toolchain 3.3.1 重新创建并在图片上测试)
为什么我将此作为问题发布?
1) Post 处于等待状态,无法回答
2)我没有足够的声誉,所以我不能评论它。
3) 审查编辑的同行没有考虑将编辑作为
answer/comment
所以我的问题 - 它应该在 meta 中,但再次没有足够的声誉 - 是:
如果编辑是对上述问题的回答,为什么编辑审阅者不接受我对搁置问题的编辑?
投反对票!
编辑如果有人可以 link 这个线程到另一个问题,我将不胜感激。
我不确定这是否真的是一个答案,但建议对此进行编辑post,我的问题确实解决了我的问题。
我将被低估而被遗忘但是: 这个问题: 被标记为不完整但不是。
用户指出了 gcc-arm-toochain3.3.1 下的一个重复错误的所有元素,并且在使用结构数组时在 32 位图片上更重复(该用户的所有问题都与那些相关)在一个结构中。
这个bug是图片考虑到structure结构中指针的继承作为单个变量名造成的。 当索引的最后一位不为 0 时,缓冲区溢出读取类型错误的值作为 max int 的倍数。
更改代码自:
structure1.structure2[i].var1 = blabla;
来自
structure2_ * ptr = NULL;
ptr = &structure1.structure2[i];
ptr->var1 = blabla;
将立即修复它(示例在 keil3.0 和 windows xp 下使用 arm-gcc-toolchain 3.3.1 重新创建并在图片上测试)
为什么我将此作为问题发布?
1) Post 处于等待状态,无法回答
2)我没有足够的声誉,所以我不能评论它。
3) 审查编辑的同行没有考虑将编辑作为 answer/comment
所以我的问题 - 它应该在 meta 中,但再次没有足够的声誉 - 是: 如果编辑是对上述问题的回答,为什么编辑审阅者不接受我对搁置问题的编辑?
投反对票!
编辑如果有人可以 link 这个线程到另一个问题,我将不胜感激。
我不确定这是否真的是一个答案,但建议对此进行编辑post,我的问题确实解决了我的问题。