我正在接收某个 size_t len 的 const char* msg 类型的流。在其中的某个字节偏移处有一个序列号(32 或 64 字节,我不确定是哪个)所以我的想法是每次我得到一个 msg 的东西时都执行以下操作:
for (int i = 0; i < 30; ++i)
{
uint32_t seq = *(uint32_t*) msg[i];
cout << "seq" << i << " " << seq << endl;
}
//and similar for 64 bytes
这样之后我就可以对具有相同偏移量的行进行分组,并查看哪个偏移量i
给了我顺序外观的输出。这样做的问题是我使用以下内容出现了段错误:
(gdb) p *(uint32_t*) msg[i]
Cannot access memory at address 0x2d
我怎样才能执行我对序列号的小搜索想法?