• 孙杨、宁泽涛扛起中国游泳大旗 2019-05-11
  • 那你就写个帖子驳呀!告诉你,我是普通老百姓就是错了也没有啥,你可是论坛“真理化身”呀! 2019-05-11
  • 守住青山不放松 护好绿水不辞难——在渝全国人大代表聚焦“共抓大保护、不搞大开发”专题调研记略 2019-05-10
  • 巴厘岛被爆众多海域垃圾成灾 潜水常被塑料瓶塑料袋包围 2019-05-04
  • 两个不能否定,怎会是停留在30年前? 2019-04-27
  • 国际在线:向世界报道中国,向中国报道世界 2019-04-27
  • 【理上网来喜迎十九大】外媒记者:稳步推进生态文明建设的中国更加美丽 2019-04-26
  • 董卿海霞李思思康辉撒贝宁 央视名嘴童年照谁更萌 2019-04-26
  • “龙江二号”微卫星传回地月合影 2019-04-18
  • 中国驻泰国大使考察合艾国光中学孔子课堂 2019-04-18
  • 【清园20年】感恩大回馈!半价!半价! 2019-04-18
  • 中央纪委紧盯节点 4年来通报曝光问题近4000起 2019-04-13
  • 2013环球企业领袖宁夏圆桌会议嘉宾云集 2019-04-13
  • 《魔兽世界》未解之谜 那些仍不能被玩家们踏足的领地 2019-04-11
  • 钱江潮评 让高质量发展插上人才的翅膀 2019-04-10
  • 打印

    广东体彩11选5开奖记录: [M3] 结构体内定义大数组到底好不好?

    [复制链接]
    1700|6
    跳转到指定楼层
    楼主
    如题,举个简单的例子
    第一种方式:
    typedef struct
    {
         u8 i;
         u8 temp[5000];
    }A;

    第二种方式:

    typedef struct
    {
         u8 i;
         u8* temp;
    }AA;

    u8 num[5000];
    AA sTU;

    sTU.temp = num;

    以上两种方式,哪一种更好, 为什么呢?
    沙发
    | 2018-7-19 09:37 | 只看该作者
    没有什么不好,看具体应用吧
    第二种灵活点,但第一种简单点
    板凳
    | 2018-8-8 13:58 | 只看该作者
    平时看不出来  如果结构体作为函数传递的时候可能就看出来了
    地板
    | 2018-9-7 12:07 | 只看该作者
    Vansm 发表于 2018-8-8 13:58
    平时看不出来  如果结构体作为函数传递的时候可能就看出来了

    大结构体最好还是用指针作为传递吧
    5
    | 2018-9-12 10:22 | 只看该作者
    你的这个两种方式没什么区别。都不会节省内存。、
    应该这样子
    typedef struct
    {
         u8 i;
         u8 temp[0];
    }A;
    结构体变成了可变大小。
    6
    | 2019-1-2 15:40 | 只看该作者
    遵循对象原则。
    第一种情况:那个大数组跟成员i是属于一个整体的,就应用第一种方式。此时只要申请一个结构变量,它就必须带一个大数组,大数组是这个对象不可分割的一部分,如果要使用指针,就另外定义结构体指针。当然,指针的大小与大数组就没有关系了,是MCU固有的。
    第二种情况:那个大数组并不是某个对象固有的,而只是某一类对象所共用或共享的,大数组只是一个公共数据池,则对象可以按第二种办法,定义为指针结构,内部成员可以通过指针指向大数组的任何一个位置。
    因此,定义数据结构要看语义是什么……
    7
    | 2019-2-21 21:43 | 只看该作者
    取决于你的实际情况阿
    单片机板子一般内存小
    第二种方法稍稍灵活一点 但是容易出错 比如没有赋值指针就访问

    从代码本身来看没有优劣之分
    扫描二维码,随时随地手机跟帖
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    我要发帖 投诉建议 创建版块 申请版主

    快速回复

    您需要登录后才可以回帖
    登录 | 注册
    高级模式

    论坛热帖

    关闭

    热门推荐上一条 /4 下一条

    快速回复 广东快乐十分走势图 返回列表
  • 孙杨、宁泽涛扛起中国游泳大旗 2019-05-11
  • 那你就写个帖子驳呀!告诉你,我是普通老百姓就是错了也没有啥,你可是论坛“真理化身”呀! 2019-05-11
  • 守住青山不放松 护好绿水不辞难——在渝全国人大代表聚焦“共抓大保护、不搞大开发”专题调研记略 2019-05-10
  • 巴厘岛被爆众多海域垃圾成灾 潜水常被塑料瓶塑料袋包围 2019-05-04
  • 两个不能否定,怎会是停留在30年前? 2019-04-27
  • 国际在线:向世界报道中国,向中国报道世界 2019-04-27
  • 【理上网来喜迎十九大】外媒记者:稳步推进生态文明建设的中国更加美丽 2019-04-26
  • 董卿海霞李思思康辉撒贝宁 央视名嘴童年照谁更萌 2019-04-26
  • “龙江二号”微卫星传回地月合影 2019-04-18
  • 中国驻泰国大使考察合艾国光中学孔子课堂 2019-04-18
  • 【清园20年】感恩大回馈!半价!半价! 2019-04-18
  • 中央纪委紧盯节点 4年来通报曝光问题近4000起 2019-04-13
  • 2013环球企业领袖宁夏圆桌会议嘉宾云集 2019-04-13
  • 《魔兽世界》未解之谜 那些仍不能被玩家们踏足的领地 2019-04-11
  • 钱江潮评 让高质量发展插上人才的翅膀 2019-04-10
  • 七星彩彩票软件 3d试机号澳客网 时时彩 福彩3d和值走势图南方双彩网 体彩p3字谜图谜总汇 时时彩缩水软件手机 通城二八杠 南国彩票七星彩论坛 体育彩票开奖查询 pk10免费计划app 四川福利彩票 动物总动员湖南彩票网 北京中彩 北京pk10最准1期计划 2元彩票双色球 北京赛车pk10牛牛妙招