当前位置: 首页 > news >正文

网站规划建设方案农业绿化风格kol推广

网站规划建设方案农业绿化风格,kol推广,安徽网站建设,重庆网站建设模板服务头文件包含路径 linux 操作系统分为两大空间:用户空间和内核空间 这样划分,是为了保护内核的核心组件,不被轻易访问和修改 系统调用:安全的访问内核空间 其核心是:函数API(API:用户编程接口&…

头文件包含路径 

 

linux 操作系统分为两大空间:用户空间和内核空间

这样划分,是为了保护内核的核心组件,不被轻易访问和修改

        

        系统调用:安全的访问内核空间

其核心是:函数API(API:用户编程接口)

所谓系统调用是指操作系统提供给用户的组“特殊”接口,用户程序可以通过这组“特殊”接口来获得操作系统内核提供的的服务

 学习linux应用编程,就是学习使用API【API需要阅读手册——参考man手册、linux c手册】

硬件中断

2.

文件编程

文件IO:一切皆为文件(内核中虚拟文件系统(VFS));用文件系统来管理

文件IO:

 文件分为四大类:-普通文件、d目录文件、l链接文件和c/b设备文件(三小类:p管道文件、s套接字和f堆栈文件)

都可以用C库函数和API来调用

把一切抽象成文件,用统一的方式管理设备和文件,节省开发资源;用过文件来操作硬件

文件描述符:

 知道一个文件的id(文件指针),操作该id就是操作该文件;

3.初级IO(creat及异常处理)

creat函数

1.宏定义  :

2.数字【0:八进制;3位8进制来表示文件的权限,r用4标识,w用2标识,x用1标识】

已经创建的文件,不能通过再creat来修改权限;

如何获取错误信息?

方法一:

errno:系统全局变量(所有应用都可以访问),用来保存错误编号(整数)

使用该变量时,要有<errno.h>这个头文件

 方法二:perror --------------------常用-----------------------

 方法三:

open函数

O_WRONLY:写        O_RDONLY:读      O_RWRD:可读可写

O_CREAT:不存在就创建;【O_EXCEL: O_CREAT存在时,打开已有的文件就报错】

O_APPEND:文件读写位置移到末尾;    O_TRUNC:文件长度为零(清空)

O_NONBLOCK:非阻塞的方式打开;

close函数

假设有两个file descript指向同一个文件,可以close(fd1/fd2)都可以,也可以各close一次

read

write

lseek

lseek的返回值是,lseek操作后,文件读写位置距离文件首的距离(字节数),以此可以测量文件大小:

lseek(fd3, 0, SEEK_END); // 返回值是文件大小(字节数)
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>
#include <stdio.h>
#include <errno.h>
#include <stdlib.h>int main(int argc, char **argv)
{// int fd1;// fd1 = creat(argv[1], S_IRWXU | S_IRWXG | S_IRWXO);
#if 0// 第一种方法if (errno == EISDIR){printf("is a directory\n");}// 第二种方法:perror("error is:");// 第三种方法:printf("%s\n", strerror(errno));#endif// printf("%d\n",fd1);// int fd2=open(argv[1],O_RDWR);// printf("%d\n",fd2);// printf("%d\n",close(fd1));// printf("%d\n",close(fd2));int fd3 = open(argv[1], O_RDWR | O_CREAT, S_IRWXG | S_IRWXO | S_IRWXU);char buffer[1024];gets(buffer);int w_num;printf("%d\n", w_num = write(fd3, buffer, strlen(buffer)));if (w_num == -1){printf("write error\n");exit(-1);}//lseek(fd3, 0, SEEK_SET);//lseek(fd3, 0, SEEK_END); // 返回值是文件大小(字节数)lseek(fd3, -w_num, SEEK_CUR);//将文件读写位置移到开头int r_num;r_num = read(fd3, buffer, strlen(buffer));buffer[r_num] = '\0';printf("read num:%d; read content:%s\n", r_num, buffer);return 0;
}

获取文件属性:

 

struct stat file_a1;//1.stat("a.txt",&file_a1);printf("stat.size=%ld\n",file_a1.st_size);//输出a.txt的大小;//2.struct stat file_a2;fstat(fd3,&file_a2);printf("fstat.size=%ld\n",file_a2.st_size);//输出a.txt的大小;//3.struct stat file_a3;lstat("a.txt",&file_a3);printf("lstat.size=%ld\n",file_a3.st_size);//输出a.txt的大小;

http://www.yayakq.cn/news/687237/

相关文章:

  • 医联体网站建设一台vps主机可以建设多少个网站
  • 番禺论坛网站建设哈尔滨seo
  • 举报网站建设运行情况网站主页模板 优帮云
  • 网站内部链接是怎么做的深圳seo优化电话
  • 庐山市建设规划局网站南京做代账会计在哪个网站上找
  • 百度地图手机网站开发烟台网站搭建
  • 网站 例ai制作海报
  • 免费域名查询网站网站建设费属于宣传费吗
  • 海南公司网站建设中国建筑集团领导名单
  • 网站建设分几步wordpress本站运行
  • 湖南网站建设seo兰州网站制作公司在哪里
  • 潍坊市建设局官方网站旅游网站的建设的意义
  • 中小型企业网站建设与管理考试wordpress 简单企业主题
  • 可以充值的网站怎么做营销平台建设
  • 实力网站开发做网站要通过网信办备案吗
  • 湖北建设银行网站首页哈尔滨龙彩做网站多少钱
  • 做课件的网站手机项目工作室
  • 网站建设策划书3000字做网站应该问客户什么需求
  • 怎样使用仿站小工具做网站建网站设置网站首页
  • 网站栏目结构哪些做外贸免费发布产品的网站
  • 做网站到底需要什么虚拟机 网站建设
  • 网站开发是干什么的河北城乡建设官网站
  • 植物提取网站做的比较好的厂家建设项目竣工验收网站
  • 企业网站的建设内容有哪些做兼职的设计网站有哪些
  • 网站开发及应用福州市台江区网站
  • 佛山白坭网站建设给公司做网站费用
  • 静态网页做的网站怎么发到网上中小学 网站建设 通知
  • html5门户网站模板单位网站建设意见
  • 网站织梦模板百度小程序如何开发
  • 专门做素菜的网站江西省城乡和住房建设厅网站