当前位置: 网站首页>小程序开发>网站优化

鄢陵400电话申请开通【鄢陵企业网站建设】鄢陵微信公众号小程序开发运营价格、鄢陵微信公众号APP软件客户端设计运营、鄢陵网页页面设计公司费用、鄢陵公司网站制作方案流程改版维护大概需要多少钱

发表日期: 2021-04-25 14:28:22 浏览次数:109

鄢陵400电话申请开通【鄢陵企业网站建设】鄢陵微信公众号小程序开发运营价格、鄢陵微信公众号APP软件客户端设计运营、鄢陵网页页面设计公司费用、鄢陵公司网站制作方案流程改版维护大概需要多少钱



鄢陵县隶属河南省许昌市,位于河南省中部,千里伏牛山脉东方,万里母亲河黄河南侧;西靠长葛市、建安区,北与开封市,东与周口市,南与漯河市接壤,现辖12个镇,386个行政村(社区),总人口66.7万人,总面积866平方公里(耕地99.6万亩)。

近年来,鄢陵县坚持“五位一体”总体布局和“四个全面”战略布局,坚持创新、协调、绿色、开放、共享发展理念,着力建设生态鄢陵、富强鄢陵、文明鄢陵、幸福鄢陵,在全面建成小康社会的征程中迈出了坚实步伐。 [1] 

鄢陵县处在中原高速公路网核心区,毗邻郑州航空港经济综合实验区,北距新郑机场50公里,西距京广铁路(京广高铁)、京港澳高速20公里,兰南高速、永登高速、机西高速和郑合高铁、三洋铁路贯穿全境,形成了四通八达、方便快捷的交通体系。 [1] 

鄢陵是全国商品粮基地和优质棉生产基地县。鄢陵县花卉苗木种植种植面积达60万亩。2011年被农业部、国家旅游局认定为“全国休闲农业与乡村旅游示范县”。 [2] 

2020年6月,入选国家森林康养基地(第一批)名单。

2020年10月9日,被生态环境部授予第四批国家生态文明建设示范市县称号。

2020年11月27日,鄢陵县被河南省林业局“省级森林城市”荣誉称号 [3]  。





关于动态内存管理

关于动态内存管理的函数原型定义在stdlib.h头文件中,Linux系统中该头文件所在路径为:/usr/include/stdlib.h中定义的与动态内存管理相关函数的原型为:

void *malloc(size_t size);
void *calloc(size_t numElement, size_t elementSize);
void *realloc(void *ptr, size_t size);
void free(void *ptr);

从堆中分配内存

  • void *malloc(size_t size)
    malloc函数通过参数指定需要分配的内存大小(单位:字节),若堆中存在足够内存则返回起始地址,否则返回NULL,示例代码如下:

    #include <stdlib.h>
    #include <stdio.h>
    
    
    int main(void) {
        int *ptr = (int *) malloc(5 * sizeof(int));
        if (!ptr) {
            printf("out of memory\n");
            return -1;
        }
        /***** do something for ptr here *****/
        free(ptr);  // 手动释放动态分配的内存
        ptr = NULL;  // 堆内存释放后,指针一般置为空指针,否则会造成悬空指针
        return 0;
    }

    从堆中开辟的内存使用完毕必须手动释放归还给堆管理器

  • void *calloc(size_t numElement, size_t elementSize)
    calloc函数通过指定元素个数和元素大小分配内存,若堆中存在足够内存则返回起始地址,否则返回NULL,示例代码如下:

    #include <stdlib.h>
    #include <stdio.h>
    
    
    int main(void) {
        int *ptr = (int *) calloc(5, sizeof(int));
        if (!ptr) {
            printf("out of memory\n");
            return -1;
        }
        /***** do something for ptr here *****/
        free(ptr);
        ptr = NULL;
        return 0;
    }

    但和malloc不同的是calloc会对开辟的内存进行零初始化,即int *ptr = (int *) calloc(5, sizeof(int));与下述代码等价(memset函数原型定义在string.h中):

    int *ptr = (int *) malloc(5 * sizeof(int));
    if (ptr) {
        memset(ptr, 0, 5 * sizeof(int));
    }
  • void *realloc(void *ptr, size_t size)
    realloc函数作用为扩大或缩小已分配的堆内存或者NULL,该函数接受两个参数,第一个参数指定要扩大或缩小的内存地址;第二个参数指定扩大或缩小后的内存大小,示例代码如下:

    #include <stdio.h>
    #include <stdlib.h>
    
    
    int main(void) {
        int *ptr = (int *) malloc(5 * sizeof(int));
        if (!ptr) {
            printf("out of memory\n");
            return -1;
        }
        int *tmp_ptr = (int *) realloc(ptr, 10 * sizeof(int));
        if (!tmp_ptr) {
            printf("out of memory\n");
            free(ptr);  // 若不再需要ptr则需释放
            ptr = NULL;
            return -1;
        }
        ptr = tmp_ptr;
        tmp_ptr = NULL;  // 一般保证开辟的堆内存只有一个引用,否则容易重复释放
        /***** do something for ptr here *****/
        free(ptr);
        ptr = NULL;
        return 0;
    }

    使用realloc需要注意的是当内存不足返回为NULL时,realloc不会将参数ptr指向的内存释放,需要人为动手释放,因此不可以写如下代码:

    #include <stdlib.h>
    int main(void) {
        int *ptr = (int *) malloc(5 * sizeof(int));
        if (!ptr) {
            printf("out of memory\n");
            return -1;
        }
        ptr = (int *) realloc(ptr, 10 * sizeof(int));
        /*****此处若内存不足realloc返回NULL,ptr将丢失之前malloc分配的内存地址,造成内存泄漏*****/
        return 0;
    }

释放内存

  • void free(void *ptr)
    free函数的作用是将从堆中分配的内存释放归还给堆,以便后续可以分配给其他的对象,该函数的参数为动态分配内存的地址。使用free函数时要注意,参数必须为malloccallocrealloc的返回值或NULL,否则将产生free(): invalid pointer运行时错误,示例代码1如下:

    #include <stdio.h>
    #include <stdlib.h>
    
    
    int main(void) {
        int a = 99;
        int *ptr = &a;
        free(ptr);  // 产生运行时错误,因为ptr指向栈内存
        ptr = NULL;
        return 0;
    }

    示例代码2如下:

    int main(void) {
        int *ptr = (int *) malloc(5 * sizeof(int));
        ptr++;
        free(ptr);  // 产生运行时错误,因为ptr已经不指向malloc分配内存的首地址
        ptr = NULL;
        return 0;
    }



微信图片_20210425092605.jpg



鄢陵400电话申请开通鄢陵企业网站建设鄢陵微信公众号小程序开发运营价格、鄢陵微信公众号APP软件客户端设计运营、鄢陵网页页面设计公司费用、鄢陵公司网站制作方案流程改版维护大概需要多少钱

400-111-6878
服务热线
顶部

备案号: 苏ICP备11067224号

CopyRight © 2011 书生商友信息科技 All Right Reserved

24小时服务热线:400-111-6878   E-MAIL:1120768800@qq.com   QQ:1120768800

  网址: http://www.768800.com  网站建设上往建站

关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|

企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|

400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 苏州殡葬一条龙| 朝阳殡葬| 苏州殡葬服务|

预约专家

欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系

  

服务热线:400-111-6878