找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3209|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

關(guān)于51單片機(jī)程序使用結(jié)構(gòu)體指針和for循環(huán)的疑問(wèn)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:636538 發(fā)表于 2020-8-4 15:36 | 只看該作者 回帖獎(jiǎng)勵(lì) |正序?yàn)g覽 |閱讀模式
我現(xiàn)在還太淺薄,最近在某站上看一個(gè)師傅講的STC15視頻,代碼使用了很多結(jié)構(gòu)體、枚舉、結(jié)構(gòu)體指針,搞得我感覺(jué)一個(gè)很簡(jiǎn)單的點(diǎn)亮小燈程序,都變的高大上啦,有沒(méi)有大佬,講一下,為什么這樣寫好,我看寫的代碼量反而增加啦?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

6#
ID:636538 發(fā)表于 2020-10-13 11:39 | 只看該作者
#include<stdio.h>


int main(void)
{
        //第一種 結(jié)構(gòu)體指針
//  struct ucode
//  {
//          char u1;
//          int u2;
//  };
//  struct ucode a={'a',98};
//  struct ucode *p=&a;
//第二種
//  struct ucode
//  {
//          char u1;
//          int u2;
//  }a={'a',98},*p=&a;
//  struct ucode a={'a',98};
//  struct ucode *p=&a;
//  printf("p->u1=%c,p->u2=%d\n",(*p).u1,(*p).u2);//(*p).u1與 p->u1等價(jià),表達(dá)相同的意思
//第三種
  typedef struct
   {
          char u1;
          int u2;
  }ucode;
  ucode  a={'a',98};
  ucode  *p=&a;
  printf("p->u1=%c,p->u2=%d\n",p->u1,p->u2);
       
}
回復(fù)

使用道具 舉報(bào)

5#
ID:636538 發(fā)表于 2020-8-5 11:37 | 只看該作者
1692483014 發(fā)表于 2020-8-4 18:07
結(jié)構(gòu)體可以將同一功能類的變量歸納總結(jié)到一起,且地址連續(xù),使用起來(lái)更方便,也更好用指針整體操作;
枚舉 ...

嗯嗯,謝謝回復(fù),明白啦
回復(fù)

使用道具 舉報(bào)

地板
ID:804115 發(fā)表于 2020-8-4 18:07 | 只看該作者
結(jié)構(gòu)體可以將同一功能類的變量歸納總結(jié)到一起,且地址連續(xù),使用起來(lái)更方便,也更好用指針整體操作;
枚舉的變量雖然可以用define定義,但是還是有優(yōu)勢(shì)的,將同一類的值放到一起,更直觀,且規(guī)定了變量的范圍,用這之外的值會(huì)報(bào)錯(cuò),可以判斷錯(cuò)誤。define就是純替代,不能檢測(cè)錯(cuò)誤。
結(jié)構(gòu)體指針就更靈活了,可以完成很多高內(nèi)聚低耦合的代碼,這個(gè)說(shuō)不太清除,但是代碼看多了,你就會(huì)發(fā)現(xiàn)它的好處了。一般在51上很少這樣用,因?yàn)?1資源太匱乏了。
回復(fù)

使用道具 舉報(bào)

板凳
ID:313246 發(fā)表于 2020-8-4 16:45 | 只看該作者
結(jié)構(gòu)體、枚舉、指針都是最基本的,不是什么高大上,你多見(jiàn)見(jiàn)就好了,沒(méi)什么奇怪的
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:636538 發(fā)表于 2020-8-4 16:34 | 只看該作者
自己頂一下,別沉下去
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表