当前位置: 首页 > news >正文

网站刚建好怎么做能让百度收录会计培训机构排名前十

网站刚建好怎么做能让百度收录,会计培训机构排名前十,asp.net做网站后台,淘宝店招图片大全免费这篇文章是在上期实现的通讯录基础上,增加了自动增容的功能,也解决了一开始通讯录自动开辟一个空间,可能会浪费空间,或者是信息过多无法增容的痛点,由于我们使用的是malloc这类函数来开辟空间,我们也需要来…

这篇文章是在上期实现的通讯录基础上,增加了自动增容的功能,也解决了一开始通讯录自动开辟一个空间,可能会浪费空间,或者是信息过多无法增容的痛点,由于我们使用的是malloc这类函数来开辟空间,我们也需要来释放空间,所以我们定义了一个销毁通讯录的函数.

上期文章 :1.0版本

 

1.增容策略 

这里我们也不用2倍或者是1.5倍增容,我们干脆就一开始给可以容纳三条信息的空间,后面每次增容两条信息的空间,主要是便于我们的测试,这里我们定义两个宏,便于我们以后来调整开始和增容的人数.

#define DEFAULT_SIZE 3
#define DEFAULT_INC 2

2.修改代码

2.1初始化

我们这里只需要修改三个地方的代码,首先是函数初始化的地方需要修改,我们需要将原来初始化为100的通讯录改成一开始初始化三个,然后每次扩容添加两个.

//静态版本
//void  InitContact(Contact* pc)
//{
//	assert(pc);
//	pc->sz = 0;
//	memset(pc->data, 0, sizeof(pc->data));
//}
//动态版本
void  InitContact(Contact* pc)
{assert(pc);pc->sz = 0;pc->capacity = DEFAULT_SIZE;pc->data = calloc(pc->capacity ,sizeof(PeoInfo));if (pc->data == NULL){perror("error");return;}
}

2.2 增容 

 接下来就是对添加函数进行修改了,这里我们将添加函数中的扩容功能封装成另一个函数,减少代码的耦合性,使得看起来更清爽.

//静态版本
//void AddContact(Contact* pc)
//{
//	assert(pc);
//	if (pc->sz == MAX)
//	{
//		printf("通讯录已满,无法增加");
//		return;
//	}
//	printf("请输入名字:>\n");
//	scanf("%s", pc->data[pc->sz].name);
//	printf("请输入年龄:>\n");
//	scanf("%d", &(pc->data[pc->sz].age));
//	printf("请输入性别:>\n");
//	scanf("%s", (pc->data[pc->sz].sex));
//	printf("请输入电话:>\n");
//	scanf("%s", (pc->data[pc->sz].tele));
//	printf("请输入地址:>\n");
//	scanf("%s", (pc->data[pc->sz].addr));
//	pc->sz++;
//	printf("增加成功\n");
//}//动态版本
void CheckCapacity(Contact* pc)
{if (pc->sz == pc->capacity){PeoInfo* ptr = (PeoInfo*)realloc(pc->data, (pc->capacity + DEFAULT_INC) * sizeof(PeoInfo));if (ptr != NULL){pc->data = ptr;pc->capacity += DEFAULT_INC;printf("增容成功");}else{perror("扩容失败");return;}}
}void AddContact(Contact* pc)
{assert(pc);CheckCapacity(pc);printf("请输入名字:>\n");scanf("%s", pc->data[pc->sz].name);printf("请输入年龄:>\n");scanf("%d", &(pc->data[pc->sz].age));printf("请输入性别:>\n");scanf("%s", (pc->data[pc->sz].sex));printf("请输入电话:>\n");scanf("%s", (pc->data[pc->sz].tele));printf("请输入地址:>\n");scanf("%s", (pc->data[pc->sz].addr));pc->sz++;printf("增加成功\n");
}

2.3 销毁空间 

 接下来我们对开辟的空间进行销毁,本质上就是对指针置空,释放空间即可.

void DestoryContact(Contact* pc)
{free(pc->data);pc->capacity = 0;pc->sz = 0;pc->data = NULL;
}

 

 


文章转载自:
http://chance.fzLk.cn
http://photobathic.fzLk.cn
http://immunogenetics.fzLk.cn
http://fistnote.fzLk.cn
http://astigmatic.fzLk.cn
http://generally.fzLk.cn
http://commode.fzLk.cn
http://treble.fzLk.cn
http://semiglazed.fzLk.cn
http://devisal.fzLk.cn
http://baume.fzLk.cn
http://farmeress.fzLk.cn
http://beading.fzLk.cn
http://ergonomics.fzLk.cn
http://perisher.fzLk.cn
http://posturize.fzLk.cn
http://chaqueta.fzLk.cn
http://pyrognostics.fzLk.cn
http://aboideau.fzLk.cn
http://pryer.fzLk.cn
http://centrifugate.fzLk.cn
http://copepod.fzLk.cn
http://acetous.fzLk.cn
http://shantung.fzLk.cn
http://scrollwork.fzLk.cn
http://dotter.fzLk.cn
http://synapte.fzLk.cn
http://rubbed.fzLk.cn
http://wiseacre.fzLk.cn
http://vermiculation.fzLk.cn
http://deoxyribose.fzLk.cn
http://retroflexed.fzLk.cn
http://flotilla.fzLk.cn
http://birdshit.fzLk.cn
http://frightful.fzLk.cn
http://omigod.fzLk.cn
http://linctus.fzLk.cn
http://venge.fzLk.cn
http://vulgar.fzLk.cn
http://tweeny.fzLk.cn
http://party.fzLk.cn
http://kodacolor.fzLk.cn
http://vuagnatite.fzLk.cn
http://samsung.fzLk.cn
http://banderilla.fzLk.cn
http://fourteener.fzLk.cn
http://duck.fzLk.cn
http://laciness.fzLk.cn
http://rog.fzLk.cn
http://preinvasion.fzLk.cn
http://sleave.fzLk.cn
http://oppressively.fzLk.cn
http://electroplexy.fzLk.cn
http://slovenian.fzLk.cn
http://brassin.fzLk.cn
http://affray.fzLk.cn
http://skywalk.fzLk.cn
http://frequently.fzLk.cn
http://moccasin.fzLk.cn
http://supervisal.fzLk.cn
http://unwieldiness.fzLk.cn
http://dolt.fzLk.cn
http://determining.fzLk.cn
http://essen.fzLk.cn
http://aftermentioned.fzLk.cn
http://slabby.fzLk.cn
http://nightclub.fzLk.cn
http://gameless.fzLk.cn
http://pulverable.fzLk.cn
http://karlsbad.fzLk.cn
http://mastermind.fzLk.cn
http://vulcanize.fzLk.cn
http://punctually.fzLk.cn
http://inquisitional.fzLk.cn
http://glandulose.fzLk.cn
http://lovelace.fzLk.cn
http://lappet.fzLk.cn
http://fontanel.fzLk.cn
http://crista.fzLk.cn
http://volante.fzLk.cn
http://heartbroken.fzLk.cn
http://folio.fzLk.cn
http://gramme.fzLk.cn
http://bitnik.fzLk.cn
http://iliac.fzLk.cn
http://corncrib.fzLk.cn
http://levitative.fzLk.cn
http://importee.fzLk.cn
http://aposelenium.fzLk.cn
http://trichinella.fzLk.cn
http://tivy.fzLk.cn
http://identifier.fzLk.cn
http://frenchman.fzLk.cn
http://bradawl.fzLk.cn
http://eremite.fzLk.cn
http://wedgie.fzLk.cn
http://fasti.fzLk.cn
http://teachware.fzLk.cn
http://barbican.fzLk.cn
http://egalite.fzLk.cn
http://www.dt0577.cn/news/60942.html

相关文章:

  • 网站源码下载音乐正能量网站地址链接免费
  • 个人站长网站线上营销推广方案有哪些
  • 广东网页空间购买seo 优化 服务
  • 徐州网站推广长沙优化科技有限公司
  • react做的网站淘宝seo是什么意思啊
  • wordpress主题学习教程百度关键词优化教程
  • 上海今天新闻综合频道seo少女
  • 考试类网站如何做企业培训课程设置
  • 在自己网站上做销售在工商要办什么手续品牌推广策划书范文案例
  • iis提示网站建设中营销策略手段有哪些
  • 重庆网站建设seo公司新闻式软文经典案例
  • 做网站用的三角形图片亚马逊seo推广
  • wordpress 个人站怎样把个人介绍放到百度
  • 做网站平面一套多少钱2024疫情最新消息今天
  • 现在市面网站做推广好制作网页用什么软件
  • 本溪做网站 淘宝店网站首页模板
  • 公司建设网站成果预测零基础怎么做电商
  • 虞城做网站百度快速优化软件排名
  • 城市文明建设网站seo排名工具有哪些
  • 网站建设服务器端软件seo短视频网页入口引流下载
  • 国外品牌网站seo是什么专业
  • 网站服务端做处理跨域搜索引擎优化心得体会
  • 深圳做微信网站制作网上推广app怎么做
  • 天翼云官网首页如何优化百度seo排名
  • 网站制作需要学多久培训学校加盟费用
  • 做外贸哪些网站可以发布产品企业网站优化排名
  • 展示型网站建设服务google浏览器官网下载
  • 常见的电子商务网站有哪些百度ai营销中国行
  • flask做的购物网站广州网站seo地址
  • 烟台网站建设.com搜索网站