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

网页设计网站实例咸阳市住房和城乡建设规划局网站

网页设计网站实例,咸阳市住房和城乡建设规划局网站,广东省农业农村厅江毅,教育培训机构有哪些IO输入输出,操作对象是文件 Linux文件类型: b block 块设备文件 按块扫描设备信息的文件 存储设备 c character 字符设备文件 按字符扫描设备信息的文件 d direct…

IO输入输出,操作对象是文件

Linux文件类型:
        b   block       块设备文件
                        按块扫描设备信息的文件
                        存储设备

        c   character   字符设备文件
                        按字符扫描设备信息的文件 

        d   directory   目录文件 
                        存放文件

        -               普通文件 
                        存放数据
                        图片、音视频、压缩包、文本文件

        l   link        链接文件 
                        快捷方式

        s   socket      套接字文件
                        用来套接字通信

        p   pipe        管道文件
                        用来进程间通信

 

普通文件:
        1.ASCII码文件
            文件中所有的字符均为能够在终端上显示的字符
            文本文件、程序.c 
        2.二进制文件
            文件中存放数据的二进制形式
            图片、音视频、压缩包 

        ASCII码文件是特殊的二进制文件

 

标准IO、文件IO
        标准IO是库函数
        文件IO是系统调用

        系统调用:功能强大,应对复杂场景不够灵活
        库函数:针对系统调用的封装,使用方便灵活

        标准IO可以在Windows或者Linux平台使用
        文件IO只能在Linux系统平台使用
 

 

标准IO:
        getchar putchar scanf printf gets puts  -> 标准IO

        #include <stdio.h>      

        fopen/fclose 
        fgetc/fputc 
        fgets/fputs
        fscanf/fprintf
        fread/fwrite 
        fseek/rewind/ftell 

从文件中读写数据的流程:
        打开文件 -> 读写文件 -> 关闭文件

      fopen                   fclose
                    fgetc/fputc     单个字符的读写
                    fgets/fputs     字符串的读写
                    fscanf/fprintf  格式化字符串的读写
                    fread/fwrite    二进制文件的读写

  7.函数接口:
        1.fopen
          FILE *fopen(const char *pathname, const char *mode);
          功能:
            打开pathname对应的文件并与其建立一个文件流
          参数:
            pathname:要打开文件路径的字符串
            mode:
                r       只读            文件不存在报错,文件存在只读打开
                r+      读写            文件不存在报错,文件存在读写打开
                w       只写            文件不存在创建,文件存在将文件内容清空,只写打开
                w+      写读            文件不存在创建,文件存在将文件内容清空,写读打开
                a       追加只写        文件不存在创建,文件存在追加只写打开
                a+      追加写读        文件不存在创建,文件存在追加写读打开
          返回值:
              成功返回打开的文件流指针
              失败返回NULL

#include <stdio.h>int main(void)
{FILE *fp = NULL;fp = fopen("a.txt", "r");if (NULL == fp){perror("fail fopen");return -1;}printf("fopen success!\n");fclose(fp);return 0;
}

        2.fclose 
          int fclose(FILE *stream);
          功能:
            关闭文件,释放文件流指针
          参数:
            stream:文件流指针
          返回值:
            成功返回0 
            失败返回EOF(-1)

 8.文件流:
        1.具有方向性(读写)
        2.具有连续性
        3.具有顺序性

        句柄:操作对象的一个抽象

9.特殊的三个文件流:
        stdin   标准输入流          从终端读取数据
        stdout  标准输出流          向终端打印数据
        stderr  标准出错流          向终端打印数据 

        getchar、scanf、gets 通过stdin来读取终端数据
        putchar、printf、puts通过stdout来向终端输出数据
        perror通过stderr来向终端输出数据

#include <stdio.h>int main(void)
{fclose(stdin);fclose(stdout);fclose(stderr);getchar();printf("hello world!\n");perror("hello world!\n");return 0;
}

 10.标准IO缓存:
        缓存分为3类:
            1.全缓存  4k
                缓存区满刷新
                
                刷新条件:
                    1.缓存区存满刷新(全缓存大小:4096)
                    2.fflush函数强制刷新
                    3.程序结束/fclose刷新

                与文件建立的缓存

            2.行缓存  1k
                遇到\n刷新  

                刷新条件:
                    1.缓存区存满刷新(行缓存大小:1024)
                    2.遇到\n刷新 
                    3.fflush函数强制刷新
                    4.程序结束/fclose刷新

                与终端建立的缓存            stdin   stdout 

            3.不缓存
                直接刷新

                缓存区大小 0k               stderr

                人机交互、界面控制、出错处理

            4.setvbuf
              int setvbuf(FILE *stream, char *buf, int mode, size_t size);
              功能:
                改变一个流的缓存类型
              参数:
                stream:文件流指针
                buf:指定缓存空间的首地址
                mode:
                    _IONBF  不缓存
                    _IOLBF  行缓存
                    _IOFBF  全缓存
                size:
                    设定缓存区的大小
              返回值:
                成功返回0 
                失败返回非0 

#include <stdio.h>int main(void)
{char tmpbuff[4096] = {0};//	setvbuf(stdout, NULL, _IONBF, 0);		//设置成不缓存
//	setvbuf(stdout, tmpbuff, _IOFBF, 4096);	//设置成全缓存setvbuf(stdout, tmpbuff, _IOLBF, 1024);	//设置成行缓存printf("hello world\n");while (1){}return 0;
}

 

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

相关文章:

  • 做美食下载什么网站wordpress wowway
  • 深圳大型网站建设服务旅游网站建设的目的及功能定位
  • iis 发布asp网站唐山网站建设推广
  • 湖南智能网站建设多少钱wordpress模板更改
  • 自己做网站百度会收录wordpress可以当网盘
  • 刚做的网站怎么呼和浩特网站建设SEO优化
  • 自己做的网站显示不安全怎么回事邯郸网站建设网页设计网络推广
  • 好的网站开发自学网站福州网站建设公司哪个好
  • 响应式网站几个断点网络营销
  • 二手书网站建设策划书网站设计方案公司
  • 做网站首页有什么头条热点新闻
  • 开发网站的可行性wordpress 加跳板
  • 自己买主机可以做网站吗免费的排版软件
  • 网站主页模板图片个人简历网页简单模板
  • 嘉定装饰装修网站贵港建设局网站查询
  • 湖北网站建设哪里有网站到期续费要多少钱
  • 东莞市微网站官方网站合作网站seo
  • 网站推广方案有哪些公司做哪个网站比较好
  • 网站备案后内容哪些网站可以做平面设计挣钱
  • 同城购物网站怎么做东莞seo整站优化
  • 没有备案的交易网站上海今天发生的重大新闻
  • 企业招聘网站模板如何做好网络宣传工作
  • 福田网站推广网站安全管理制度建设下载
  • 武夷山网站建设保定广告设计公司
  • 1元云购网站怎样建设自己创建个人免费网站
  • 网站建设应具备的技能哪个网站可以找到毕业设计
  • 如何建设一个普通网页网站担保公司发展规划
  • 辛集seo网站优化电话网销是什么该怎么做
  • 聊城 网站建设动漫网站的建设目标
  • 高端品牌网站制作想建设一个网站自己接一些小活