如何为C语言的结构体数组分配/释放内存?

struct emp

{

char name[10];

float salary;

};

int main(int argc,char* argv[])

{

struct emp array_emp[1000000];

解决方案:2分

http://blog.csdn.net/q345852047/article/details/7348038

解决方案:30分

#include

#include

#include

#include

struct emp {

char name[10];

float salary;

};

int main() {

struct emp *array_emp;

array_emp=malloc(1000000*sizeof(struct emp));

if (NULL==array_emp) {

printf("Can not malloc 1000000 emp!\n");

return 1;

}

strcpy(array_emp[999999].name,"123456789");

array_emp[999999].salary=50000.0f;

free(array_emp);

return 0;

}

解决方案:1分

第12行array_emp=malloc(1000000*sizeof(struct emp));

应改为

array_emp=(struct emp *)malloc(1000000*sizeof(struct emp));

解决方案:1分

也许PRO*C和标准C不同。每弄过PRO*C,爱莫能助。

#include

#include

#include

#include

struct emp {

char name[10];

float salary;

};

int main() {

struct emp *array_emp;

int i;

array_emp=(struct emp *)malloc(1000000*sizeof(struct emp));

if (NULL==array_emp) {

printf("Can not malloc 1000000 emp!\n");

return 1;

}

for (i=0;i<1000000;i+=10000) {

sprintf(array_emp[i].name,"%d",i);

array_emp[i].salary=(float)i;

}

for (i=0;i<1000000;i+=10000) {

printf("%d %s %f\n",i,array_emp[i].name,array_emp[i].salary);

}

free(array_emp);

return 0;

}

//0 0 0.000000

//10000 10000 10000.000000

//20000 20000 20000.000000

//30000 30000 30000.000000

//40000 40000 40000.000000

//50000 50000 50000.000000

...

//

解决方案:1分

每弄过→没弄过

解决方案:1分

struct Point{

int x;

int y;

}

Point* pt;

pt = (Point*)malloc(10 * sizeof(Point));

//do sth

free(pt);

然后就可以用下标来操作了

pt[0].x = 12;

解决方案:1分

来看看11楼的回答

解决方案:1分

是因为只有1条数据的缘故吧

解决方案:1分

高手我这样定义似乎可以了,这样定义,我没法根据表的记录数来分配内存了,必须写死记录数了?

struct emp

{

char name[1000000][10];

float salary[1000000];

};

但是和如下定义有什么区别马?

struct emp_record

{

char name[10];

float salary;

};

个人感觉本质上来说没区别,但是一般不选择上面的,不方便。

解决方案:1分

看到5w的salary,其它的就不想看了,人生的差距最大不过如此……

c语言结构体数组内存大小,如何为C语言的结构体数组分配/释放内存?相关推荐

  1. 频繁分配释放内存导致的性能问题的分析--brk和mmap的实现

    现象 1 压力测试过程中,发现被测对象性能不够理想,具体表现为:  进程的系统态CPU消耗20,用户态CPU消耗10,系统idle大约70  2 用ps -o majflt,minflt -C pr ...

  2. 【百度分享】频繁分配释放内存导致的性能问题的分析

    现象1 压力测试过程中,发现被测对象性能不够理想,具体表现为:  进程的系统态CPU消耗20,用户态CPU消耗10,系统idle大约70  2 用ps -o majflt,minflt -C prog ...

  3. (C语言版)链表(三)——实现双向链表创建、删除、插入、释放内存等简单操作

    http://blog.csdn.net/fisherwan/article/details/19760681 上午写了下单向循环链表的程序,今天下午我把双向链表的程序写完了.其实双向链表和单向链表也 ...

  4. c语言算定积分d的大小,你知道C语言怎么实现求定积分吗

    #include #include #define ACC 1000 float solve(float (*p)(float),float up,float down,int acc); float ...

  5. c 语言链表 删除第一个节点,最简单的链表删除第一个节点时释放内存的问题

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 1 #include 2 #include "list.h" 3 4 int IsEmpty(List L) 5 { 6      r ...

  6. java动态分配空间吗,当执行new为一个对象分配内存时,Java()A、自动初始化所分配的内存空间B、只分配内存,初始化要...

    南极洲周围海洋上体型最大的哺乳动物是[ ]A.企鹅B.鲸鱼C.海豹D.海象 明明来自海南岛,他的话可信的是()A.我们那里一年四季都很热B.我们那里冬天经常下雪C.我们家的平顶房可以晒 人体生命活动的 ...

  7. vector 释放内存 swap

    http://blog.csdn.net/jerryjbiao/article/details/7389233 相信大家看到swap这个词都一定不会感到陌生,甚至会有这样想法:这不就是简单的元素交换嘛 ...

  8. 【C 语言】二级指针作为输入 ( 二维数组 | 二维数组内存大小计算 | 指针跳转步长问题 )

    文章目录 一.二维数组内存大小计算 二.二维数组内存大小意义 一.二维数组内存大小计算 给定一个二维数组 : 该 二维数组 中有 444 个 一维数组 , 每个一维数组有 101010 个 char ...

  9. 【C 语言】二级指针案例 ( 字符串切割 | 返回 自定义二级指针 作为结果 | 每个 一级指针 指向不同大小内存 | 精准分配每个 一级指针 指向的内存大小 )

    文章目录 一.二级指针案例 ( 返回自定义二级指针 | 精准控制内存大小 ) 二.完整代码示例 一.二级指针案例 ( 返回自定义二级指针 | 精准控制内存大小 ) 博客 [C 语言]二级指针案例 ( ...

最新文章

  1. php程序员面试题(持续补充,偏中级面试题)
  2. 构建Spring Boot程序有用的文章
  3. 为什么分布式一定要有redis,redis的一些优缺点
  4. QTP User-Defined Function 学习经验汇总
  5. java基础相关面试题
  6. 18100出多少取整_关于JavaScript数据类型,你知道多少?
  7. Disable STRICT_TRANS_TABLES @Mysql 5.7
  8. android studio2.4,Android Studio 2.4 Preview 7 发布
  9. java实训---------双色球彩票管理系统(LotterySystem)
  10. mybatis if test 之 like concat()函数
  11. KeilC51基础 利用仿真测试代码的运行时间
  12. 搭建静态的响应式个人官网
  13. vb脚本实现电脑定时关机操作
  14. 老毛子的二级路由,通过无线中继方式设置与主路由在同一网段
  15. STM32芯片包下载和安装教程
  16. C#使用OleDB操作ACCESS插入数据时提示:标准表达式中数据类型不匹配。
  17. node快速搭建后台
  18. 计算机管理系统工具 下没有用户名密码,电脑设置管理系统用户账户,更改用户名,设置密码等...
  19. 关闭工单时报错 订单 XXXX 的未处理将来更改记录阻止删除标记/完成
  20. java程序员平时都使用哪些软件??

热门文章

  1. “幻核”跑路,数字藏品路在何方?
  2. Shell 和Shell Script 基础
  3. 面试典籍(整理于6.24-6.30)
  4. 【两个有序数组求中位数】
  5. php幻灯片调大小,ppt如何统一调整各页图片大小
  6. 给Jenkins加https证书
  7. “量子+生成式AI”!IBM联合生物制药公司Moderna进行疫苗研究
  8. 求一个数的相反数算法
  9. Python中空格的转义字符
  10. maven 的生命周期