当前位置:  技术问答>linux和unix

哪个头文件定义了 '_IO_*' ?

    来源: 互联网  发布时间:2016-06-09

    本文导语:  在Solaris 10下编译下面的文件: #include  #include  #include  #include  #include  #include  #include  #include  #include  #include  #define _IO_UNBUFFERED __SNBF #define _IO_LINE_BUF __SLBF #define _IO_file_flags _flags #define BUFFERSZ(fp) (fp)->_bf._size vo...

在Solaris 10下编译下面的文件:
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#define _IO_UNBUFFERED __SNBF
#define _IO_LINE_BUF __SLBF
#define _IO_file_flags _flags
#define BUFFERSZ(fp) (fp)->_bf._size
void pr_stdio(const char *, FILE *);

int
main(void)
{
   FILE *fp;

  fputs("enter any charactern", stdout);
  if (getchar() == EOF)
err_sys("getchar error");
  fputs("one line to standard errorn", stderr);

  pr_stdio("stdin",  stdin);
  pr_stdio("stdout", stdout);
  pr_stdio("stderr", stderr);

  if ((fp = fopen("/etc/motd", "r")) == NULL)
err_sys("fopen error");
  if (getc(fp) == EOF)
err_sys("getc error");
  pr_stdio("/etc/motd", fp);
exit(0);
}

void pr_stdio(const char *name, FILE *fp)
{
printf("stream = %s, ", name);

/*
 * The following is nonportable.
 */
if (fp->_IO_file_flags & _IO_UNBUFFERED)
printf("unbuffered");
else if (fp->_IO_file_flags & _IO_LINE_BUF)
printf("line buffered");
else /* if neither of above */
printf("fully buffered");
printf(", buffer size = %dn", BUFFERSZ(fp));
}


在编译的过程中产生下面的错误:

In function 'pr_stdio':
error:structure has no member named '_IO_file_flags'
error:'_IO_UNBUFFERED' undeclared
error:'_IO_LINE_BUF' undeclared
error:structure has no member named '_IO_buf_end'
error:structure has no member named '_IO_buf_base'

为什么会产生上面的错误呢?是不是哪个头文件没有引进来?
谢谢!

|
源代码里面说了:

    /*
     * The following is nonportable.
     */

检查一下你的机器上的/usr/include/stdio.h和/usr/include/libio.h,看看相应的字段应该是什么名字。

    
 
 

您可能感兴趣的文章:

  • 请问:定义文件里需不需要用#include 将对应的头文件包含进来啊?
  • 为什么我在头文件time.h里找不到time_t的定义呢?只有这个定义typedef __time_t time_t;
  • GCC编译程序时,有自定义头文件,提示找不到该头文件,但他就在这个目录中,如何设置GCC参数?
  • 一个宏定义放到文件的最后,为什么不能生效?
  • 跪求一个按指定日期搜索文件,并把搜索到的文件复制到自定义的目录下的shell程序
  • 怎么查找一个函数在哪个文件中定义的
  • 哪个头文件包含有“最大可打开文件数”的定义?
  • 内核中的POLICY在哪个文件中定义了?
  • 有谁知道用什么命令可以在dos下建立新文件,并且定义文件的类型吗?还有怎么在dos下修改文件的属性呢?
  • 在jb6中,如何制作包含jdbc和自定义包的jar文件。
  • 文件名的最大长度在哪里定义?
  • 常用的各个头文件里都包含了些什么的定义?
  • 哪位大虾知道smp_num_cpus 定义在哪个头文件里?
  • ★★★在linux下编译pro*c文件,提示"sqlcxt"没有定义,哪位高手帮忙,定赠分!
  • JSP页面中能定义文件输出流变量吗?
  • Linux中系统头文件的搜索路径定义在哪?
  • MAX_PATH这个宏定义在哪个头文件里的?
  • 请问:从哪个header文件中看struct tty_driver的定义
  • new和delete操作符在哪个头文件里定义的?
  • linux logrotate使用-自定义日志文件名
  • unix下文件IO和dos下文件IO有什么区别?
  • linux文件direct io读取为何效率比非direct io低很多,请专家指点?
  • 在线文件服务 usend.io
  • AIX的磁盘阵列,把文件分布到不同VG或文件系统上,对IO性能有帮助吗?
  • java.io 莱鸟问题:程序运行时用到的文件应该放在哪个目录下?在线等待。。。
  • 一块垃圾硬盘中,哪种文件存放的方式的IO压力比较小?
  • 用JAVA的IO怎么实现图形文件(GIF/JPG)的读写,100分奉送!
  • 用多进程读写文件的效率为什么会远远不如一个进程直接IO的效率
  • Rhino的3DM文件IO库 OpenNURBS
  • 从数据库取出一图片,存储为文件的问题。主要是IO难住了。
  • 求助:Linux下写文件的导致其他进程的IO延迟
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ I/O 成员 eof():如果处于文件结尾处则返回true
  • Shell脚本如何递归现实一个文件夹中的文件(文件夹中含有文件夹)
  • WinDows8最新版文件夹加密
  • 求命令:什么命令可以把文件夹下所有的文件按修改时间先后排出来,包括子文件夹里的文件。
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • [提问]Linux下如何把多个.a文件编译一个.so文件,或者把多个.so文件编译成一个.so文件
  • python异常信息堆栈输出到日志文件
  • 请问:proc中的头文件中能包含头文件吗?(感觉如果头文件中包含头文件的话,在链接时就会有错误啊)
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 我要实现当进程打开文件时,根据文件名判断是否符合要求,符合后处理文件,再把文件返回给进程,怎么实现啊
  • 在MyEclipse中设开启xml文件自动提示和自动完成功能
  • vi 中编辑两个文件,怎样从其中一个文件拷一段内容到另一个文件中。(同时打开两个文件)
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • 怎么统计一个文件夹下有多少个文件(不包括文件夹)
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • 请教高手一个简单问题:给定一个文件名,如何去查找该文件正在被几个程序使用,并怎么样才可以切断这个文件与正在打开该文件的程序之间的
  • MyEclipse如何查看和设置文件编码格式相关操作
  • linux 下的 .a 文件 .o 文件 是什么文件?各有什么作用?
  • 使用libpcap读取tcpdump抓取的文件并解析c代码实例
  • 如何用socket一次传输多个文件,如何确定文件一个文件结束
  • 设置sharepoint 2010文档库中的 pdf文件在浏览器中访问的打开方式
  • 如何删除某个目录下除了指定文件夹之外的所有文件和文件夹


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3