首页 > 其他 > 详细

unix的输入输出操作

时间:2016-02-23 13:10:06      阅读:108      评论:0      收藏:0      [点我收藏+]

unix的输入输出操作


使用的头文件
#include <unistd.h>
#include <stdio.h>

函数说明
  • ssize_t read(int fd, void *buf, size_t count);
从fd 中最多读入 count 个信息到 buf 中。当 fd 的为 STDIN_FILENO 这个宏定义的时候,表示标准输入。
  • ssize_t write(int fd, const void *buf, size_t count);
将最多 count 个信息从 buf 中写道 fd 所指向的文件中,当 fd 的为 STDOUT_FILENO 这个宏定义的时候,表示标准输出。
  • int getc(FILE *stream);
从 stream 中取得一个字符,并将此字符返回给返回值。当 stream 是变量stdin 时,表示标准输入,stdin 在 stdio.h 中有定义。
  • int putc(int c, FILE *stream);
将字符 c 保存到 stream 中。当 stream 是变量 stdout 的时候,表示标准输出,stdout 在 stdio.h 中有定义。
  • char *fgets(char *s, int size, FILE *stream);
从 stream 中取得 size 个字符,并将其保存在 s 中,并返回指向 s的指针。
 
程序举例:
 
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

#define     BUFFSIZE     4096

int main(void)
{
     int          n;
     char     buf[BUFFSIZE];

     while ((n = read(STDIN_FILENO, buf, BUFFSIZE)) > 0)
          if (write(STDOUT_FILENO, buf, n) != n)
               printf("write error");

     if (n < 0)
          printf("read error");

     exit(0);
}
 
#include <stdio.h>

int main(void)
{
     int          c;

     while ((c = getc(stdin)) != EOF)
          if (putc(c, stdout) == EOF)
               printf("output error");

     if (ferror(stdin))
          printf("input error");

     exit(0);
}

unix的输入输出操作

原文:http://www.cnblogs.com/babyha/p/5209425.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!