文件编程

  文件描述符 fd --->>>数字(文件的身份证,代表文件身份),通过 fd 可找到正在操作或需要打开的文件。

基本函数操作:

1)打开/创建文件

int open (const char* pathname, int flag, mode_t mode)
成功:返回文件的fd 失败:返回-
文件路径 打开标志 文件权限
eg: fd = open("/home/S3-app/test.c", O_RDWR|O_CREAT, );

2)读文件

ssize_t read(int fd, void *buf, ssize_t count)
成功:返回读取字节数 失败:-
要读取的文件fd 读取的数据存到buf指向的空间 希望读取的字节数
int fd; char buf[];
eg: read(fd, buf, 1024);

3)写文件

ssize_t write(int fd,const void *buf, ssize_t count)
成功:返回写入字节数 失败:-
要写入的文件fd 指向要写入的数据的位置地址 希望写入的字节数
int fd; char buf[];
eg: write(fd, "hello", 6);

  发送、接收文件

//发送文件内容    先把要发送d 文件数据读到buf中->再通过buf写入发送的目标文件中
while((count=read(fd,(void *)buf,))>) //buf:读取来的数据存到buf指向的空间 希望读取的字节数 返回读取的字节数
{
write(new_fd, &buf,count); //&buf->整个数据数组
}
close(fd); //接收文件内容 先把要接收的数据读到buf中->再通过buf写入接收文件中
while((count=read(new_fd,(void *)buf,))>)//buf:读取来的数据存到buf指向的空间 希望读取的字节数 返回读取的字节数
{
write(fd, &buf,count);   //&buf->整个数据数组
         tmpsize += count;
         if(tmpsize == filesize) break;
         }
         clode(fd);

Linux时间编程

/*  time_t time(NULL)    日历时间--从标准时间到现在的秒数*/
time_t ctime = time(NULL); //不保存数值地址
printf("%d",ctime); int型 /* struct tm *gmtime(time_t *ct) 格林威治时间--世界标准时间*/
/* struct tm *localtime(time_t *ct) 本地时间 (同上)*/
struct tm *tm; //结构体
tm = gmtime(&ctime);
printf("%d:%d",tm->tm_hour,tm->tm_min); struct tm*结构体 /* char* asctime(const struct tm *tm) 以字符串方式显示 */
char* asc;
asc = asctime(tm);
printf("%s", asc); 指针字符串

最新文章

  1. Java:方法的参数是传值还是传引用
  2. JMeter入门使用指南
  3. C# Language Specification
  4. nodejs爬虫
  5. [luogu 1880]石子合并
  6. jquery 1.9里面已经删除了toggle(fn1, fn2)函数
  7. Android Intent简介
  8. ajax对文件上传
  9. Concepts and Tricks In CNN
  10. 从编译安装Keepalived 到 配置 负载均衡(LVS-DR)
  11. 用R语言对一个信用卡数据实现logit,GBM,knn,xgboost
  12. 今天真开心,终于知道怎么打包apk了
  13. 从零开始学习前端开发 — 6、CSS布局模型
  14. 系统及DB参数引发的“灾难”
  15. hdu 1166 线段树(sum+单点修改)
  16. 第1章 发现端点(Discovery Endpoint) - IdentityModel 中文文档(v1.0.0)
  17. Java逆向工程SpringBoot + Mybatis Generator + MySQL
  18. 高斯消元(Gauss消元)
  19. 记flask连接容联云时提示172001,网络错误
  20. UVA1616-Caravan Robbers(枚举)

热门文章

  1. Android零基础入门第78节:四大组件的纽带——Intent
  2. QML于C++交互之信号与槽(signal&slot )
  3. easyui在IE中: SCRIPT1003: 缺少 ':'
  4. IntelliJ IDEA热部署
  5. 程序跳过UAC研究及实现思路(两种方法,现在可能都不行了)
  6. Qt之OpenSSL(有pro文件的路径格式,以及对libeay32和ssleay32的引用)
  7. C语言实现常用查找算法——二分查找
  8. vuejs切换导航条高亮路由高亮做法
  9. MCtalk对话学吧课堂:真正的K12在线教育才刚刚开始
  10. 中转Webshell 绕过安全狗(一)