gpt4 book ai didi

c - 使用 C 中的 fscanf 读取十六进制值序列(一次 2 个)

转载 作者:行者123 更新时间:2023-11-30 15:21:22 25 4
gpt4 key购买 nike

所以我有一个文本文件,假设名为text.txt。其格式为:4C 4D 4E 4F(即字符串“LMNO”的十六进制值)。我已经正确打开了文本文件等。我应该如何使用 fscanf 读取四个字节的序列(即一次 1 个字节),将每个字节存储在变量中(具有适当的数据类型) )。我的最终目标是了解如何在字符数组 char test[4]; 中存储字母 LMNO (即 test[0] = 'L', test[1 ] = 'M',...)

最佳答案

#include<stdio.h>

int main(void){
FILE *fp = fopen("text.txt", "r");
char test[5] = {0};
unsigned hex;
int i;
for(i=0; i < 4; ++i){
if(1==fscanf(fp, "%2x", &hex))
test[i] = (char)hex;
else
break;
}
fclose(fp);
puts(test);
return 0;
}

关于c - 使用 C 中的 fscanf 读取十六进制值序列(一次 2 个),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29581011/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com