linux下基本I/O操作

 
/****fileio.c***/
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
int main(void)
{  int fd,size;
   char s[]="This program is used to show how to use open(),write(),read() function.\nHave fun!\n";
   char buffer[80];
   /*以可读写的方式打开一个文件,如果不存在则创建该文件*/
   /*open()函数第一个参数是打开文件的名字,第二个是标志位,返回值是一个文件描述符*/
 fd = open( "temp.log", O_WRONLY|O_CREAT );
   if ( -1 == fd )
    {
      printf("Open or create file named \"temp.log\" failed.\n");
      return -1;
    }
    write( fd, s, sizeof(s) );/*向该文件中写入一个字符串,write函数第一个参数是文件描述符,第二个是缓冲区,第三个是读写的字节数*/
    close( fd );
    fd = open( "temp.log", O_RDONLY );
    if ( -1 == fd )
    {
     printf("Open file named \"temp.log\" failed.\n");
     return -1;
    }
    /*读取文件内容保存到buffer指定的字符串数组中,返回读取的字符个数*/
    size = read( fd, buffer, sizeof(buffer) );
    printf( "%s", buffer );
    return 0;
    close( fd );
    
}

你可能感兴趣的:(linux)