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

標題: 如何跳出雙層循環,加密程序等問題 [打印本頁]

作者: wrdt24435    時間: 2018-9-6 16:52
標題: 如何跳出雙層循環,加密程序等問題
問題1:有什么更好的方案跳出雙重循環,例如在for循環里面有個while循環等待某個位變化,但是怕被干擾了死在while循環里于是在while循環里計數:

方案1: 用goto:  while(判斷){  if(i++>30000)   goto xxx}   感覺非常方便,但老師和一些書籍都說的最好不要用goto

方案2: while(判斷){  if(i++>30000)   {i1=1; break;}  }  
            if(i1==1)    break;   //(在這跳出for循環)
請教各位還有什么方法跳出雙層循環。

問題2:直接跳入函數好還是,打開函數入口好?

例如按鍵掃描程序,在獲取鍵值后是直接進入 KEY_Deal()  //假設這個是按鍵處理程序

方案2:  if(SWITCH==0;)   return;//這是主程序掃描程序之一,獲鍵值后賦值SWITCH,打開按鍵處理入口,讓單片機掃過去處理鍵值然后下一句是
              KEY_Deal();

我的理解是方案2能減少堆棧,并且在較為簡單的主程序里不會影響處理按鍵速度。

問題3: 包含過多.h文件會增加代碼長度嗎?

我現在是用教程的方法,包含一個例如叫global.h文件,在這個文件里包含工程用到的所有的.h文件,然后所有的.c文件只需包含這個global.h就夠了,我看了別人的程序是每個.c文件里包含用到的.h文件,用global.h方案會增加代碼長度嗎,還是會出現其他問題?感覺十分方便。

問題4: 我想先在第一次上電時檢查FLASH的某些位置(如0x8555之類任意的)數據是否是自己賦值,然后在程序在第一次上電時往這些flash位置寫入多個數據,這么做是想防止復制燒錄文件,這種方法可行嗎?對程序加密不是很懂,望指教。

目前在學習方向是精通C和了解各種電子元器件和電路,下一步方向跑嵌入式系統,學習ARM機和Linux系統。想法有什么不對請前輩指教下






歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美日韩一区二区在线 | a视频| 538精品视频 | 99热国产在线 | 天堂色av | 亚洲天天干 | 欧美深夜福利 | 亚洲成人欧美 | 黄色福利 | 欧美精品二区三区四区免费看视频 | 国产一区精品视频 | 亚洲免费黄色 | 99小视频| 欧美日韩成人在线 | 荤话粗俗h高h重口 | 一区二区国产在线 | 天天干b | 国产三级在线播放 | 超碰com| 国产普通话对白 | 麻豆精品在线播放 | 亚洲免费黄色 | 伊人网综合 | 天天射av| 性久久久久久久 | 国产精品久久久久久久成人午夜 | 日韩av手机在线观看 | 天天摸夜夜操 | 少妇高潮av久久久久久 | 久久久久久久91 | 黄色一级片免费 | 在线a| 九九热免费视频 | 欧美精品一二三区 | a天堂视频 | 91精品视频在线播放 | 国产尤物视频 | 超碰在线人人 | 成人久久网站 | 亚洲一区在线播放 | 欧美一级色 |