1
我想从文本文件中读取十六进制值。然后我需要存储它们各自的4位二进制等值,这样我可以访问各个位进行比较。 在文件中的十六进制的格式如下:从文件中读取十六进制
5104
de61
567f
而且我希望能够有一次存储一个二进制以这样的方式每行,我可以访问特定位,也许在数组?像: {0,1,1,0,0,0,0,1 ...}
我在理解ç模糊的尝试已经取得了这一点:
int main(int argc, char *argv[]){
FILE *file;
char instructions[8];
file = fopen(argv[1], "r");
while(fgets(instructions, sizeof(instructions), file) != NULL){
unsigned char a[8];
int i = 0;
while (instructions[i] != '\n'){
int b;
sscanf(&instructions[i], "%2x", &b);
a[i] = b;
i += 2;
}
}
fclose(file);
return 0;
}
**发表你试过什么**,和你为什么认为它会起作用以及为什么它似乎失败的猜测。 – WhozCraig 2014-10-01 22:16:54
将它们存储在字节中,并使用按位运算符来检查位 – 2014-10-01 22:17:20
“我试过了我能想到的所有方法”这很好。请展示您最接近的尝试,因为入门级问题的良好尝试通常足以修复。 – dasblinkenlight 2014-10-01 22:18:16