函数声明:

    1、隐式声明:在没有声明的情况下,系统可依据參数类型推断去调用函数(有可能出错)

    2、显式声明:声明在被调用之前。如:double add(double,double);  函数声明參数可仅仅写类型,不须要写函数体。



文件操作:

    fopen  --打开文件,FILE *pFile=fopen("a.txt","w");

        fopen的打开模式:

            r:仅仅能读,要求文件存在

            r+:可读可写,要求文件存在

            w:仅仅能写,创建文件。假设文件存在则先删除旧文件

            w+:可读可写,创建文件,假设文件存在则先删除旧文件

            a:仅仅能写。如不存在则创建文件。假设存在则不改动文件内容,追加内容

            a+:可读可写,如不存在则创建文件。假设存在则不改动文件内容,追加内容

            b:以二进制方式操作文件,可与以上几个混合使用

    

    fwrite  --向文件写入内容,int arr[5]={0};fwrite(arr,sizeof(int),5,pFile);

    fread   --从文件读取内容,int arr[5]={0};fread(arr,sizeof(int),5,pFile);

    fclose  --关闭文件。fclose(pFile);pFile=NULL;

    fputs   --写入内容。char str[20]={'a','b'};fputs(str,pFile);

    fgets   --读取内容。char str[20]={0};fgets(str,20,pFile);//从文件读取19字符+'\0'

    ftell(FILE* pfile)   --得到指针位置距离开头的距离。假设当前指针是文件尾,能够得到文件大小

    rewind(FILE* pfile)  --把指针位置移到开头



    fseek(FILE* pfile,int relativeposition,SEEK_FLAG flag)  --定位读写指针

        flag:

            SEEK_SET --开头

            SEEK_CUR --当前位置

            SEEK_END --文件尾



联合类型(union):多个变量共享一段内存,同一时刻仅仅有一个成员变量具有有效值。

比如:

union{

    int i;

    double d;

}myunion;



枚举类型:

enum color{RED,BLUE,GREEN};//转换为int值依次是 0,1,2

enum color{RED=1,BLUE=4,GREEN};//转换为int值依次是 1,4,5

用法:

enum color{RED=5,BLUE,GREEN} mycolor,mycolor1;//定义两个变量

mycolor=(enum color) 7;

cout<<(int)BLUE<<endl;//直接使用

标C编程笔记day05 函数声明、文件读写、联合类型、枚举类型的更多相关文章

  1. javascript面向对象编程笔记(函数)

    第三章 函数 3.1 什么是函数 一般来说,函数声明通常由以下几部分组成: function子句 函数名称 函数所需参数 函数体 return子句.如果某个函数没有显示的返回值,默认它的返回值为und ...

  2. python笔记(三)---文件读写、修改文件内容、处理json、函数

    文件读写(一) #r 只读,打开文件不存在的话,会报错 #w 只写,会清空原来文件的内容 #a 追加写,不会请求,打开的文件不存在的话,也会帮你新建的一个文件 print(f.read()) #获取到 ...

  3. C学习笔记(8)--- 文件读写

    1.C 文件读写: 一个文件,无论它是文本文件还是二进制文件,都是代表了一系列的字节.C 语言不仅提供了访问顶层的函数,也提供了底层(OS)调用来处理存储设备上的文件. a.打开文件: FILE *f ...

  4. c# 函数练习;结构体、枚举类型

       * 结构体 1.就是一个自定义的集合,里面可以放各种类型的元素,用法大体跟集合一样. 注意:枚举类型和结构体都属于值类型. 2.定义的方法: struct student { public in ...

  5. 标C编程笔记day06 动态分配内存、函数指针、可变长度參数

    动态分配内存:头文件 stdlib.h     malloc:分配内存     calloc:分配内存,并清零     realloc:调整已分配的内存块大小     演示样例:         in ...

  6. 标C编程笔记day04 预处理、宏定义、条件编译、makefile、结构体使用

    预处理:也就是包括须要的头文件,用#include<标准头文件>或#include "自己定义的头文件" 宏定义,如:#define PI 3.1415926 查看用宏 ...

  7. javascript面向对象编程笔记(函数之闭包)

    3 函数 3.5 闭包(closures) 3.5.1 作用域链 与很多程序设计语言不同,javascript不存在大括号级的作用域,但它有函数作用域,即在函数内定义的变量在函数外是不可见的.但如果该 ...

  8. C++MFC编程笔记day05 文档类-单文档和多文档应用程序

    文档类 1 相关类    CDocument类-父类是CCmdTarget类,所以,文档类也能够处理菜单等               命令消息. 作用保存和管理数据.    注意事项:怎样解决断言错 ...

  9. Python笔记-built-in函数,文件操作,lambda函数

    Built-In: i = abs(123) print(i) j = abs(-123) print(j)#123#123 #all,需要传一个可迭代的东西,里面所有的值是真,返回真 r1 = al ...

随机推荐

  1. 【Statistics】均值

    均值 均值(mean)是全部数据的算术平均值,也称为算术平均.在统计学中具有重要的地位,是集中趋势的主要测量值.均值分为:简单均值.加权均值. 简单均值 设代表均值,代表样本各变量值,n代表变量个数, ...

  2. ASP.NET CORE 学习之原生DI实现批量注册

    以前使用Autofac的时候,只需一句AsImplementInterfaces()就可以很轻松实现批量注册功能.而asp.net core内置的DI框架没有现成的批量注册方法,考虑到替换Autofa ...

  3. AsyncHttpClient来完成网页源代码的显示功能,json数据在服务器端的读取还有安卓上的读取

    一.使用AsyncHttpClient来完成网页源代码的显示功能: 首先.我们引入 步骤: 1.添加网络权限 2.判断网页地址是否为空 3.不为空的情况下创建客户端对象 4.处理get/post请求 ...

  4. C语言 (内存) 四道经典题目

    void GetMemory(char *p) { p = (); "没有释放内存" } void Test(void) { char *str = NULL; GetMemory ...

  5. sell学习

    Linux Shell编程入门 从程序员的角度来看, Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁.用户既可以输入命令执行,又可以利用 Sh ...

  6. codility上的问题(34) Fluorum 2014

    好久没写codility的题了.一来没时间,二来有的题目不太好分析.这个题比較有意思,我还没有给出很严格的证明.

  7. 解决错误: ios property has a previous declaration

    今天维护一个项目的时候,我新添加了一个库,运行的时候报错了: ios property has a previous declaration 上网查了一下没有找到思路,不过根据提示自己试了一下,原来这 ...

  8. iOS之设置用户头像的圆角

    1. 显示用户头像用UIImageView实现,添加默认图片后效果如下图所示,头像显示为矩形图片. 代码实现: // ViewController.m // SetUserImage // // Cr ...

  9. U盘工作原理(转)

    u盘工作原理 一. U盘基本工作原理 通用串行总线(Universal serial Bus)是一种快速灵活的接口, 当一个USB设备插入主机时,由于USB设备硬件本身的原因,它会使USB总线的数据信 ...

  10. Linux平台使用Freetds连接SQL Server服务器,兼容PHP和Laravel

    本文在CentOS 7 64bit和Laravel 4.2环境测试通过.   1.下载源码并解压缩 wget ftp://ftp.freetds.org/pub/freetds/stable/free ...