Linux——文件写入(write)操作

Linux——文件写入(write)操作_第1张图片

  ssize_t write(int fd, const void *buf, size_t count);
 int fd:描述符。

const void *buf:一个无类型指针作为写入的缓冲区。

size_t count    : 写入文件的大小

将缓冲区里面内容写入(大小为count)到fd中。

代码:

#include 
#include 
#include 
#include 
#include 
int main()
{
   int fd;
   char *buf = "qianrushi";  //定义buf类型和要写入的内容

   fd = open("./file1",O_RDWR);
   if(fd == -1)
   {
        printf("open file1 failed\n");
        fd = open("./file1",O_RDWR|O_CREAT,0600);
        if(fd>0){

                printf("create file1 successful\n");
        }
   }
        printf("open success : fd=%d\n",fd);
        write(fd,buf,sizeof(buf)); //写入操作
        close(fd);         //关闭该文件

        return 0;
}

Linux——文件写入(write)操作_第2张图片

 在linux对指针分配了8个字节,所以只显示qianrush。

此时需更改:

 write(fd,buf,strlen(buf));

 

你可能感兴趣的:(linux,c语言)