您身边的网站建设专家
成功案例

【建站服务】连云港微信公众号开发【连云港网络推广】连云港建站、连云港网站维护、连云港网页制作、连云港微信小程序代运营公司-域名申请

日期: 2022-09-20 15:21:27 浏览数:7


上往建站提供服务器空间服务商百度快照排名网站托管百度推广运营,致力于设计外包服务与源代码定制开发360推广搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。


连云港微信公众号开发【连云港网络推广】连云港建站、连云港网站维护、连云港网页制作、连云港微信小程序代运营公司

淮安位于江苏省中北部,江淮平原东部。地处长江三角洲地区, [1]  是苏北重要中心城市, [2]  南京都市圈紧密圈层城市,淮河生态经济带首提首推城市 [3]  ,坐落于古淮河与京杭大运河交点,处在中国南北分界线“秦岭-淮河”线上,拥有中国第四大淡水湖洪泽湖,是全国文明城市 [4]  、国家历史文化名城、国家卫生城市、国家园林城市、国家环境保护模范城市、国家低碳试点城市、中国优秀旅游城市。为淮扬菜的主要发源地之一,是江淮流域古文化发源地之一。

淮安有2200多年建城史。秦时置县,境内有著名的“青莲岗文化”遗址。曾是漕运枢纽、盐运要冲,驻有漕运总督府、江南河道总督府。历史上与苏州、杭州、扬州并称运河沿线的“四大都市”,曾经淮安“因运而兴、因运而盛” [5]  ,有“中国运河之都”的美誉。中国大运河淮安段入选世界遗产名录。淮安地处江苏省长江以北的核心地区,邻江近海,为南下北上的交通要道,区位优势独特。是江苏省的重要交通枢纽,也是长江三角洲北部地区的区域交通枢纽。

淮安人杰地灵,是一代伟人周恩来总理的故乡。 [6]  历史上诞生过大军事家韩信、汉赋大家枚乘、巾帼英雄梁红玉、《西游记》作者吴承恩、民族英雄关天培、《老残游记》作者刘鹗等。 [7] 

淮安有著名的红色旅游景区周恩来故里景区、刘老庄八十二烈士陵园、黄花塘新四军军部纪念馆、苏皖边区政府旧址纪念馆等,生态旅游景区古淮河文化生态景区、里运河文化长廊、洪泽湖古堰景区、第一山国家森林公园、清晏园、金湖水上森林公园等。

使用realloc函数

我们可能需要时不时地增加或减少为指针分配的内存,如果需要一个变长数组这种做法尤其有用。realloc函数会重新分配内存,下面是它的原型:

void *realloc(void *ptr, size_t size);复制代码

realloc函数返回指向内存块的指针。该函数接受两个参数,第一个参数是指向原内存块的指针,第二个是请求的大小。重新分配的块大小和第一个参数引用的块大小不同。返回值是指向重新分配的内存的指针。

请求的大小可以比当前分配的字节数小或者大。如果比当前分配的小,那么多余的内存会还给堆,不能保证多余的内存会被清空。如果比当前分配的大,那么可能的话,就在紧挨着当前分配内存的区域分配新的内存,否则就会在堆的其他区域分配并把旧的内存复制到新区域。

如果大小是0而指针非空,那么就释放内存。如果无法分配空间,那么原来的内存块就保持不变,不过返回的指针是空指针,且errno会设置为ENOMEM。

该函数的行为概括在表2-2中。

表2-2:realloc函数的行为

{%}

在下例中,我们使用两个变量为字符串分配内存。一开始分配16字节,但只用到了前面的13字节(12个十六进制数字外加null结束字符(0)):

char *string1;char *string2;string1 = (char*) malloc(16);strcpy(string1, "0123456789AB");复制代码

接着,用realloc函数指定一个范围更小的内存区域。然后打印这两个变量的地址和内容:

string2 = realloc(string1, 8);printf("string1 Value: %p [%s]
", string1, string1);printf("string2 Value: %p [%s]
", string2, string2);复制代码

输出如下:

string1  Value: 0x500 [0123456789AB]string2  Value: 0x500 [0123456789AB]复制代码

图2-6说明了内存如何分配。

{%}

图2-6:realloc示例

堆管理器可以重用原始的内存块,且不会修改其内容。不过程序继续使用的内存超过了所请求的8字节。也就是说,我们没有修改字符串以便它能装进8字节的内存块中。在本例中,我们本应该调整字符串的长度以使它能装进重新分配的8字节。实现这一点最简单的办法是将NUL赋给地址507。实际使用的内存超出分配的内存不是个好做法,应该避免。

在接下来的例子中,我们会重新分配额外的内存:

string1 = (char*) malloc(16);strcpy(string1, "0123456789AB");string2 = realloc(string1, 64);printf("string1 Value: %p [%s]
", string1, string1);printf("string2 Value: %p [%s]
", string2, string2);复制代码

执行以上代码得到类似下面的结果:

string1  Value: 0x500 [0123456789AB]string2  Value: 0x600 [0123456789AB]复制代码

在本例中,realloc必须分配一个新的内存块。图2-7说明了内存的分配。

{%}

图2-7:分配额外内存

c51c866ffa1ab3457f2021e8bbdbcc1.jpg


连云港微信公众号开发连云港网络推广连云港建站、连云港网站维护、连云港网页制作、连云港微信小程序代运营公司



上往建站提供搭建网站域名注册官网备案服务网店详情页设计企业网店专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管网页美工排版,致力于域名申请竞价托管软文推广全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机网站推广百度竞价托管网站建设上网建站推广服务网络公司有哪些等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


全国咨询热线:400-111-6878

地址:全国各地都有驻点商务

Copyright © 2021 通陆科技

网站建设上往建站