码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2014-08-01 19:46:22      阅读:240      评论:0      收藏:0      [点我收藏+]

标签:使用   文件   数据   for   art   ar   size   type   


动态分配内存:头文件 stdlib.h
    malloc:分配内存
    calloc:分配内存,并清零
    realloc:调整已分配的内存块大小
    示例:
        int *p=(int *) malloc(3*sizeof(int));//分配内存,成功返回首地址,失败返回NULL
        free(p);p=NULL;//释放分配的内存,并修改指针的值,避免出现野指针(指向一个地址,但地址已被回收)
const 与指针:
    const int *p; //指针可变,指针对应的数据不可修改
    int * const p; //指针不可变,指针对应的数据可修改
    const int * const p; //指针不可变,指针对应的数据不可修改

指向函数的指针:
    int add(int a,int b){return a+b;}
    int mul(int a,int b){return a*b;}
    int (*a) (int ,int )=NULL; //定义函数类型指针
    int sum;
    a=add;
    sum=a(3,4);//7
    a=mul;
    sum=a(3,4);//12
    typedef int (*pa)(int,int) pa1,pa2; //定义函数类型指针
    pa1=add;
    pa2=mul;
    sum=pa1(3,4);//7
    sum=pa2(3,4);//12

可变长度参数的使用:头文件 stdarg.h
    int max(int count,...)//count为后面参数的个数,不确定多少个
    {
        va_list v;
        va_start(v,count);
        for(int i=0;i<count;i++)
        {
            int argi=va_arg(v,int);//取出各参数的值
        }
        va_end(v);
    }

标C编程笔记day06 动态分配内存、函数指针、可变长度参数,布布扣,bubuko.com

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

标签:使用   文件   数据   for   art   ar   size   type   

原文地址:http://blog.csdn.net/pukuimin1226/article/details/38340263

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!