久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

這串C語言代碼能不能在優(yōu)化一下?

查看數(shù): 1493 | 評論數(shù): 14 | 收藏 0
關(guān)燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2024-10-4 02:39

正文摘要:

謝謝大蝦

回復

ID:1134818 發(fā)表于 2024-10-27 19:37
1.去掉只有一句的if的括號
2.去掉沒有用的if,比如12行、17行兩對
3.把aa和bb寫成a[0]和a[1],其他對應(yīng)也寫成數(shù)組,用個for
4.4個位也可以用數(shù)組+for
ID:401564 發(fā)表于 2024-10-7 10:52
循環(huán)用取模表達式,代碼字母不可能不會少,但行數(shù)變少了
temp = (temp + 1) % 10000;
變量aa和bb如果是循環(huán)變化,同樣也可以用取模
ID:1109793 發(fā)表于 2024-10-6 13:27
shenqiwei 發(fā)表于 2024-10-6 04:57
我的意思是IF能不能同時判斷AA,BB。這樣代碼量就會很少

不懂同時怎樣判斷。把BCD那部分弄個函數(shù),就很簡潔了。

  1. uchar bcd[4],bcd2[4];
  2. void ibtd(uint i,uchar* mem){ //取余法獲得BCD碼
  3. uchar j;
  4. for(j=2;j<255;j--){                          
  5.         mem[j]=i%10;
  6.     i=i/10;
  7.     }   
  8. }
復制代碼
ID:879348 發(fā)表于 2024-10-6 10:25
千百十個的運算做成一個函數(shù),程序看上去會簡潔點
ID:278457 發(fā)表于 2024-10-6 04:59
188610329 發(fā)表于 2024-10-5 23:28
你要優(yōu)化什么?
優(yōu)化 C 語句看上去的簡潔程度?
還是代碼執(zhí)行效率?

我要C語句,簡潔程度。
ID:278457 發(fā)表于 2024-10-6 04:57
xiaobendan001 發(fā)表于 2024-10-5 07:52
你這看起來簡化了,編譯出來可不一定吧

我的意思是IF能不能同時判斷AA,BB。這樣代碼量就會很少
ID:624769 發(fā)表于 2024-10-5 23:28
你要優(yōu)化什么?
優(yōu)化 C 語句看上去的簡潔程度?
還是代碼執(zhí)行效率?
變量的占用量?
還是排版上毫無意義的一大堆括號?
ID:579397 發(fā)表于 2024-10-5 14:41
黃youhui 發(fā)表于 2024-10-5 08:08
將if判斷語句那里換成==就是正解。

手快寫漏了
ID:1109793 發(fā)表于 2024-10-5 09:12
405616736 發(fā)表于 2024-10-5 03:46
int str[4]
       
if(aa==20)

而且你這個sprintf輸出的字符,不是BCD碼吧。這樣要是顯示到比如數(shù)碼管上面還得再處理一下吧。
ID:592807 發(fā)表于 2024-10-5 08:08
405616736 發(fā)表于 2024-10-5 03:46
int str[4]
       
if(aa==20)

將if判斷語句那里換成==就是正解。
ID:1109793 發(fā)表于 2024-10-5 07:52
405616736 發(fā)表于 2024-10-5 03:46
int str[4]
       
if(aa==20)

你這看起來簡化了,編譯出來可不一定吧
ID:579397 發(fā)表于 2024-10-5 03:46
本帖最后由 405616736 于 2024-10-5 23:30 編輯

int str[4]
        
if(aa==20)
        {
                aa=0;
                if(++temp==9999) temp=0;
                sprintf(str,"%04d",temp);        }


ID:278457 發(fā)表于 2024-10-5 01:59
xiaobendan001 發(fā)表于 2024-10-4 14:26
BCD碼放數(shù)組里面,然后弄個函數(shù),把數(shù)組地址和數(shù)據(jù)傳進去,里面用一個循環(huán)搞定,這樣應(yīng)該簡化不少吧。
大 ...

最好還是用語法搞定
ID:1109793 發(fā)表于 2024-10-4 14:26
BCD碼放數(shù)組里面,然后弄個函數(shù),把數(shù)組地址和數(shù)據(jù)傳進去,里面用一個循環(huán)搞定,這樣應(yīng)該簡化不少吧。
大概類似這種代碼編譯器好像也可以幫你簡化。就是實際上出來的HEX并不大。

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品久久久久久久久久辛辛 | 免费网站黄色 | 日韩在线视频免费观看 | 久久在线免费视频 | 天堂视频在线免费观看 | 精品国产一二三区 | 一区二区三区在线播放 | 国产成人高清 | 女子spa高潮呻吟抽搐 | 亚洲最大av网站 | 国产成人a亚洲精品 | av资源在线 | 亚洲国产精品久久久久 | 久视频在线 | 日韩中文字幕 | 中文字幕亚洲欧美 | 日韩精品视频免费播放 | 久久国产影院 | 午夜性影院| 天天看天天干 | 婷婷五月在线视频 | 91免费看国产| 黄色片视频网站 | 中文字幕永久 | 求av网址| 中文在线观看免费网站 | 久艹视频在线观看 | 超碰在线免费公开 | 欧美日韩在线看 | 黑人巨大猛烈捣出白浆 | 黄色午夜 | 国产一级黄色 | 精品视频在线观看免费 | 91福利网站| 国产一区二区在线观看视频 | www.日本高清 | 国产精品久久 | 欧美一区二区三区在线播放 | 亚洲精品免费观看 | 亚洲视频在线一区 | 久久久久一区二区三区 |