註冊
登錄
會員
幫助
茂宣企業 產品討論區
»
Silicon Labs 產品討論區
» 程式技巧問題
‹‹ 上一主題
|
下一主題 ››
發新話題
發佈投票
發佈商品
發佈懸賞
發佈活動
發佈辯論
發佈視頻
打印
程式技巧問題
owenliao
新手上路
發短消息
加為好友
當前離線
1
#
大
中
小
發表於 2009-4-24 17:44
只看該作者
程式技巧問題
哈囉,板上的各位,
想請問一下, 關於用C來寫code,
假如有三個參數要送到一個副程式去執行.
case 1:
將三個參數設定為全域函數, 設定完各別的值後,再呼叫副程式
case 2:
將副程式設定為可以傳入引數的方式如 void function (Byte i, Byte j, Byte,k)去執行
上敘兩種方式,哪種方式是比較好的呢?
謝謝大家~~
精華
0
積分
6
閱讀權限
10
在線時間
1 小時
註冊時間
2009-4-21
最後登錄
2009-4-29
查看詳細資料
TOP
Jacky
高級會員
發短消息
加為好友
當前離線
2
#
大
中
小
發表於 2009-4-27 16:08
只看該作者
>>將三個參數設定為全域函數, 設定完各別的值後,再呼叫副程式
將變數設全域變數,主要是當很多副程式可以讀這變數,當call完了,這變數的值還是在的,這樣的用法只是你會站記憶體空間.
>>將副程式設定為可以傳入引數的方式如 void function (Byte i, Byte j, Byte,k)去執行
以這樣的方式,當副程式結束,變數值也會跟這結束,當你的變數是在這副程式中執行完,就不需要的話,建議使用區域變數.這樣比較不會站RAM空間...
所以囉~看你的應用...
J.K
精華
0
積分
731
閱讀權限
50
在線時間
15 小時
註冊時間
2009-3-9
最後登錄
2011-5-9
查看詳細資料
TOP
小柚子
高級會員
發短消息
加為好友
當前離線
3
#
大
中
小
發表於 2009-4-27 16:18
只看該作者
都不錯 不過就資料封裝的意念 副程式裡面的資料不應該跟全欲變數有關聯 不然不好移植
所以第二種會比較好
不過就速度而言
當然是第一種比較快阿
精華
0
積分
833
閱讀權限
50
在線時間
29 小時
註冊時間
2009-3-9
最後登錄
2011-8-8
查看詳細資料
TOP
‹‹ 上一主題
|
下一主題 ››
產品討論區
Avago 產品討論區
Linear Tech 產品討論區
Prolific 產品討論區
Silicon Labs 產品討論區
站務公告
其他議題
HR 小分享