C语言求助 这个payload[2]=?
答案:1 悬赏:20 手机版
解决时间 2021-03-25 07:24
- 提问者网友:杀手的诗
- 2021-03-25 01:02
C语言求助 这个payload[2]=?
最佳答案
- 五星知识达人网友:雪起风沙痕
- 2021-03-25 02:25
playload现在指向的地址是BLE_FORMAT,而BLE_FORMAT是一个变量而不是数组或者指针。
所以 假如BLE_FORMAT的内存地址是0x01,那么playload[2]则是0x01+2*sizeof(struct HT_BLE_FORMAT)的地址。由于BLE_FORMAT的有效长度是从0x01-0x01+sizeof(struct BLE_FORMAT),所以playload[2]已经越界,至于越界的后果有很多种,比如段错误了,覆盖代码了等等。追问BLE_FORMAT我已经求出他的地址了,这样是不对的吗?小白一个能否讲的直白一些,谢谢!
所以 假如BLE_FORMAT的内存地址是0x01,那么playload[2]则是0x01+2*sizeof(struct HT_BLE_FORMAT)的地址。由于BLE_FORMAT的有效长度是从0x01-0x01+sizeof(struct BLE_FORMAT),所以playload[2]已经越界,至于越界的后果有很多种,比如段错误了,覆盖代码了等等。追问BLE_FORMAT我已经求出他的地址了,这样是不对的吗?小白一个能否讲的直白一些,谢谢!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯