C语言难点笔记

来源:互联网 发布:app猫咪软件下载 编辑:程序博客网 时间:2024/04/30 09:50
        这两天又看了C语言的教程,觉的难的地方需要记录一下。

       指针数组和指向数组的指针
       int * pi[3];      //pi是指向int类型的指针数组

       int a[][3] ={{1,2,3}, {1,2,3}, {1,2,3}};      //两维数组即数组的数组,a[0]是一个一维的3个int型元素的数组
       int (*pa)[3] = a;      //pa是一个指向3个int元素的数组的指针


       const
      
const char* p1;     
//指针本身不是常量,可以p1++,但指向的东西不能修改,*p1='a'不行
       char* const p2;      //指针本身是常量,p2++不行,但可以修改指向的内容,*p2='b'可以
       const char* const p3;      //指向常量的指针常量

       函数指针
      
int (*fp)(const char*, …) = fprintf;     
//调用可以fp("hello") 或者 (*fp)("hello")

       extern void insert(void);
       extern void update(void);
       extern void delete(void);
       void (*farray[])(void)={insert, update, delete};     
//farray是一个函数指针数组,调用farray[0]()


       
ALLOC.H    说明内存管理函数(分配、释放等)。
        ASSERT.H    定义 assert调试宏。
        BIOS.H     说明调用IBM—PC ROM BIOS子程序的各个函数。
        CONIO.H    说明调用DOS控制台I/O子程序的各个函数。
        CTYPE.H    包含有关字符分类及转换的名类信息(如 isalpha和toascii等)。
        DIR.H     包含有关目录和路径的结构、宏定义和函数。
        DOS.H     定义和说明MSDOS和8086调用的一些常量和函数。
        ERRON.H    定义错误代码的助记符。
        FCNTL.H    定义在与open库子程序连接时的符号常量。
        FLOAT.H    包含有关浮点运算的一些参数和函数。
        GRAPHICS.H   说明有关图形功能的各个函数,图形错误代码的常量定义,正对不同驱动程序的各种颜色值,及函数用到的一些特殊结构。
        IO.H      包含低级I/O子程序的结构和说明。
        LIMIT.H    包含各环境参数、编译时间限制、数的范围等信息。
        MATH.H     说明数学运算函数,还定了 HUGE VAL 宏, 说明了matherr和matherr子程序用到的特殊结构。
        MEM.H     说明一些内存操作函数(其中大多数也在STRING.H 中说明)。
        PROCESS.H   说明进程管理的各个函数,spawn…和EXEC …函数的结构说明。
        SETJMP.H    定义longjmp和setjmp函数用到的jmp buf类型, 说明这两个函数。
        SHARE.H    定义文件共享函数的参数。
        SIGNAL.H    定义SIG[ZZ(Z] [ZZ)]IGN和SIG[ZZ(Z] [ZZ)]DFL常量,说明rajse和signal两个函数。
        STDARG.H    定义读函数参数表的宏。(如vprintf,vscarf函数)。
        STDDEF.H    定义一些公共数据类型和宏。
        STDIO.H    定义Kernighan和Ritchie在Unix System V 中定义的标准和扩展的类型和宏。还定义标准I/O 预定义流:stdin,stdout和stderr,说明 I/O流子程序。
        STDLIB.H    说明一些常用的子程序:转换子程序、搜索/ 排序子程序等。
        STRING.H    说明一些串操作和内存操作函数。
        SYS/STAT.H   定义在打开和创建文件时用到的一些符号常量。
        SYS/TYPES.H  说明ftime函数和timeb结构。
        SYS/TIME.H   定义时间的类型time[ZZ(Z] [ZZ)]t。
        TIME.H     定义时间转换子程序asctime、localtime和gmtime的结构,ctime、 difftime、 gmtime、 localtime和stime用到的类型,并提供这些函数的原型。 VALUE.H    定义一些重要常量, 包括依赖于机器硬件的和为与Unix System V相兼容而说明的一些常量,包括浮点和双精度值的范围。