fpos_t类型变量的格式说明符?

fpos_t类型变量的格式说明符?,第1张

概述在这里我只想看看变量pos的内容;那么什么类型的格式说明符必须用于此? #include <stdio.h>void main() { FILE *fileptr = fopen("sample.txt", "r+"); fpos_t pos; int val = fgetpos(fileptr, &pos);} fpos_t在C标准中定义为: fpos_t whic 在这里我只想看看变量pos的内容;那么什么类型的格式说明符必须用于此?

#include <stdio.h>voID main() {    file *fileptr = fopen("sample.txt","r+");    fpos_t pos;    int val = fgetpos(fileptr,&pos);}
解决方法 fpos_t在C标准中定义为:

fpos_t

which is a complete object type other than an array type capable of recording all the information needed to specify uniquely every position within a file.

此类型不一定是标量,可以定义为具有多个成员的结构.没有printf格式以可读的方式输出它.某些系统可能需要执行复杂的任务来处理文本文件,而不是每台计算机都是PC.

如果您对实现感兴趣,可以将其内容转储为十六进制字节:

#include <stdio.h>int main(voID) {    file *fileptr = fopen("sample.txt","r+");    fpos_t pos;    if (fileptr && fgetpos(fileptr,&pos) == 0) {        printf("contents of pos: ");        for (size_t i = 0; i < sizeof(pos); i++) {            printf("%02X",((unsigned char *)&pos)[i]);        }        printf("\n");    }    return 0;}

在许多现代系统中,您将获得0000000000000000,因为64位整数足以表示文件偏移所需的所有信息,但您不应该依赖于此.

总结

以上是内存溢出为你收集整理的fpos_t类型变量的格式说明符?全部内容,希望文章能够帮你解决fpos_t类型变量的格式说明符?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1217401.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存