小编Alv*_*orn的帖子

用C(字节)写十六进制

我必须用十六进制写一个字节到文件,但我有一个问题.例如.

如果我有:

unsigned char a = 0x0;
Run Code Online (Sandbox Code Playgroud)

我用fwrite写一个文件:

FILE *fp = fopen("file.txt",wb);
fwrite(&a,sizeof(unsigned char),1,fp);
fclose(fp);
Run Code Online (Sandbox Code Playgroud)

当我打开文件时,我总是看到20h,为什么不是00h?

所以,我尝试使用:

fprintf(fp,"%x",a);
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我看到0h,但我需要一个完整的字节,而不是半字节.我该怎么办?

c hex byte

0
推荐指数
1
解决办法
1万
查看次数

标签 统计

byte ×1

c ×1

hex ×1