Bootstrap

Linux c fread/fseek 函数

函数:fread
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);

参数说明:

  • 参数

    buffer

    指向要读取的数组中首个对象的指针

    size

    每个对象的大小(单位是字节)

    count

    要读取的对象个数

    stream

    输入流

函数:fseek
int fseek(FILE *stream, long int offset, int whence);

参数说明

  • stream:这是一个指向FILE对象的指针,表示要操作的文件流。
  • offset:表示从指定的位置开始移动的字节数。它是一个长整型值,正数表示向文件末尾方向移动,负数表示向文件开头方向移动,零表示不移动。
  • whence:这是一个整型值,用于指定从哪个位置开始计算偏移量。它可以是以下三个常量之一:
    • SEEK_SET:从文件开头开始计算偏移量(即文件的起始位置)。
    • SEEK_CUR:从当前位置开始计算偏移量(即stream指向的当前位置)。
    • SEEK_END:从文件末尾开始计算偏移量(即文件的结束位置)。

代码:

     FILE *fp = NULL;

    char str_prikey[65] = {0};

    fp = fopen("test", "r");

    if(!fp) {

        printf("open  file failed!\n");

        return -1;

    }

    int ret = fread(str, 1, sizeof(str), fp);

    if(ret != sizeof(str)) {

        printf("read failed!\n");

        fclose(fp);

        return -1;

    }

    fclose(fp);

;