标C编程笔记day05 函数声明、文件读写、联合类型、枚举类型

函数声明:

    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;//直接使用

上一篇:指针数组,数组指针,函数指针,main函数实质,二重指针,函数指针作为參数,泛型函数


下一篇:SQLite-FMDatabase用法