需要帮助我使用c ++来处理十六进制字符串
离。 语法文件二进制文件
32 32 32 32 32 32 30 3D 32 30 31 31 31 30 31 30
32 32 32 32 32 32 31 3D 32 30 31 31 31 30 31 30
32 32 32 32 32 32 32 3D 32 30 31 31 31 30 31 30
32 32 32 32 32 32 33 3D 32 30 31 31 31 30 31 30
分隔符= 3D
search = 0x32 0x32 0x32 0x32 0x32 0x32 0x32
最后一步如何根据0x32 0x30 0x31 0x31 0x31 0x30 0x31 0x30
之类的搜索建立输出
商店char *
请帮帮我
答案 0 :(得分:0)
你不太清楚。
我假设你有一个包含这些字符的文件(btw,TEXT文件,而不是二进制文件),你想逐行读取它,然后用“3D”分割eache行,然后将每个部分存储在一个char中*
首先,阅读有关打开文件以及如何逐行阅读的内容,您将在任何教程中找到它。
其次,使用strtoken()将行“拆分”为“3D”。请记住,此时,它只是文本,忘记了十六进制。
稍后您可以使用scanf()将每个部分读取为十六进制并将它们存储到char *中,然后您可以比较它并存储您想要的内容。
如果文件是二进制文件,那么你需要查找getc()函数或gets(),但想法是一样的。在第二步中,如果需要将其拆分为0x3d十六进制值,只需执行此操作。