qfedu-linux-advanced-level/day2/write_test.c

31 lines
837 B
C
Raw Permalink Normal View History

#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h> // close
// 写数据
int main(int argc, char const *argv[])
{
int fd = open("test.txt", O_WRONLY | O_TRUNC); // 打开文件,以只写方式打开并清空文件内容
if (fd < 0)
{
perror("open"); // 打开文件失败时输出错误信息
return -1;
}
char content[32] = "hello world\n"; // 要写入的数据
ssize_t len = write(fd, content, sizeof(content)); // 写入数据
if (len != -1)
{
printf("向文件号: %d, 写入数据成功: %ld bytes\n", fd, len); // 输出写入成功的信息
}
if (close(fd) < 0) // 关闭文件
{
perror("close"); // 关闭文件失败时输出错误信息
return -1;
}
return 0;
}