小编Ste*_*en 的帖子

读取c中的二进制值

我可以从二进制文件中读取无符号整数,但其中一个值打印为负数.

预期价值:

45788331,281302247,461354227,13127,299215653,2356985123,

打印出的价值观:

45788331,281302247,461354227,13127,299215653,-1932982173,

第6个值打印为负数,但我正在读取未签名的整数列表?

我的代码如下

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
        FILE * fp;
        ssize_t read;
        int r = 0;

        fp = fopen("numbers.bin", "rb");
        if (fp == NULL)
                exit(-1);

        while(fread(&r, sizeof(unsigned int), 1, fp) == 1)
        {
                printf("%d\n", r);
        }

        fclose(fp);
        if (line) free(line);

        exit(0);
}
Run Code Online (Sandbox Code Playgroud)

c binary

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

标签 统计

binary ×1

c ×1