//int i = 10;
//int a[i]
int len;
printf(“第一次输入数组的长度:”);
scanf(“%d”, &len);
//开辟内存
//int* p = malloc(len * sizeof(int));
int* p = calloc(len , sizeof(int));
//p是数组的首地址,p就是数组的名称
//给数组元素赋值(使用这一块刚刚开辟出来的内存区域)
int i = 0;
//初始化随机数发生器,设置种子,种子不一样,随机数不一样
//当前时间作为种子
srand((unsigned)time(NULL));
for (; i < len; i++)
{
p[i] = rand() % 100;
printf(“%d;%#x\n”, p[i], &p[i]);
}
printf(“-------------------------------------------------------------\n”);
int addLen;
printf(“输入数组增加的长度:”);
scanf(“%d”, &addLen);
//内存不够用,扩大刚刚分配的内存空间
//realloc 参数一:原来内存的指针,参数二:内存扩大之后的总大小
int* p2 = realloc(p,(len + addLen) * sizeof(int));
if (p2==NULL)
{
printf(“内存分配失败”);
}
//重新分配内存的两种情况:
//缩小:缩小的那一部分数据会丢失
//扩大:(连续的),
//1.如果当前内存段后面有需要的内存空间,直接扩展这段内存空间,realloc返回原指针
//2.如果当前内存段后面的空闲字节不够,那么就使用堆中的第一个能够满足这一要求的内存块,
// 将目前的数据复制到新的位置,并将原来的数据块释放掉,返回新的内存地址
//3.如果申请失败,返回NULL,原来的指针任然有效
//重新赋值
i = 0;
for (; i < len + addLen; i++)
{
p2[i] = rand() % 200;
printf(“%d;%#x\n”, p2[i], &p2[i]);
}
//多个内存释放,只需要释放最后一个内存就好了,前面的自动释放,或者已经释放过了
if (p2 != NULL)
{
free(p2);
p2 = NULL;
}
getchar();
}
//见图一效果图
//内存分配的几个注意细节
//1.不能多次释放
//2.释放完之后,给指针置NULL,标志释放完成
//3.内存泄漏(p重新赋值之后,再free,并没有真正释放内存)
void main() {
int len;
printf(“输入数组的长度:”);
scanf(“%d”, &len);
//开辟内存
int* p = calloc(len, sizeof(int));
int i = 0;
srand((unsigned)time(NULL));
for (; i < len; i++)
{
p[i] = rand() % 100;
printf(“%d;%#x\n”, p[i], &p[i]);
}
if (p != NULL)
{
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级安卓工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
Android高级架构师
由于篇幅问题,我呢也将自己当前所在技术领域的各项知识点、工具、框架等汇总成一份技术路线图,还有一些架构进阶视频、全套学习PDF文件、面试文档、源码笔记做整理一份资料。
需要的朋友可以**私信【学习】**我分享给你,希望里面的资料可以给你们一个更好的学习参考。
或者直接点击下面链接免费获取
- 330页PDF Android学习核心笔记(内含上面8大板块)
-
Android学习的系统对应视频
-
Android进阶的系统对应学习资料
- Android BAT部分大厂面试题(有解析)
好了,以上便是今天的分享,希望为各位朋友后续的学习提供方便。觉得内容不错,也欢迎多多分享给身边的朋友哈。
习的系统对应视频**
- Android进阶的系统对应学习资料
[外链图片转存中…(img-dvBP1hoW-1710833638807)]
- Android BAT部分大厂面试题(有解析)
[外链图片转存中…(img-7Ko03imZ-1710833638807)]
好了,以上便是今天的分享,希望为各位朋友后续的学习提供方便。觉得内容不错,也欢迎多多分享给身边的朋友哈。