编程一个程序,实现往a.txt文件中写入“123456789”,并读取出来以及输出班级、学号、姓名
步骤一:设置虚拟机与客户机文件共享
步骤二:进入终端再进入共享文件夹里面
@ubuntu:~$cd /mnt/hgfs/share //进入共享文件夹 我的主机文件夹命名为share,可根据自己情况进行修改
@ubuntu:/mnt/hgfs/share$ //已进入共享文件夹
步骤三:烧写代码
可以使用Notepad++对程序进行编写
#include <stdio.h> //open函数所需要的头文件
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h> //write、read函数所需要的头文件
#include <unistd.h>
int main ()
{
printf("班级\t\t学号\t\t姓名\n");
printf("没啥用班级\t007、250、666\t马什么梅、迪迦、炎龙侠\n");
//打开文件“a.txt”
int fd = open("./a.txt", O_RDWR); //以读写的方式打开当前目录下的a.txt
if(fd == -1) //open函数执行失败
{
//打印错误信息
perror("文件打开失败"); //将errno的信息转换出来
return -1;
}
printf("文件打开成功,描述符为:%d\n", fd);
//往a.txt中写入“123456789”
char wr_buf[10] = {"123456789\n"}; //定义了写入的BUF
int ret = write(fd, wr_buf, sizeof(wr_buf)); //写入数据
if(ret == -1) //写入失败
{
//打印错误信息
perror("文件写入失败"); //将errno的信息转换出来
return -1;
}
printf("写入数据成功,写入了%d个字节的数据\n", ret);
//移动光标的位置
lseek(fd,-10,SEEK_END);
//读取数据
char re_buf[ret];
int r = read(fd, re_buf, sizeof(re_buf));
if(r == -1){
//读取数据失败
perror("文件读取失败");
return -1;
}
printf("读取数据成功,读取到%d个字节的数据\n",r);
printf("读取到的内容:");
for(int i = 0;i<sizeof(re_buf);i++){
printf("%c",re_buf[i]);
}
printf("\n");
//关闭文件
int close = fd;
if(fd == -1){
perror("关闭文件失败\n");
}
printf("关闭文件成功\n");
return 0;
}
此时报错属于正常现象
步骤四:运行程序
首先要在共享文件夹里面新建一个a.text文本文档 (将代码也放进共享文档里面)
打开unbuntu终端输入命令如下
@ubuntu:/mnt/hgfs/share$ gcc new.c
@ubuntu:/mnt/hgfs/share$ ./a.out
运行结果:

本文介绍了一个使用C语言编写的简单程序,该程序能够往指定文件中写入字符串,并将其读取出来显示。此外,还展示了如何在程序中输出预设的班级、学号和姓名信息。
1037

被折叠的 条评论
为什么被折叠?



