[問題] extern或是傳址

看板C_and_CPP (C/C++)作者 (雅馬卡夕)時間14年前 (2011/10/17 16:40), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串1/1
如果我今天有一個函式被呼叫 其中會用到一些原本全域陣列 資料量算龐大 比如說有用到int a[30] 被呼叫的函式也會用到a陣列 我目前是用extern int a[30]比較好 請問改寫成傳址的方式會比較好嗎 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.41.186

10/17 16:47, , 1F
f(int a[30]); 效果和 f(int *a) 是一樣的,在呼叫函式
10/17 16:47, 1F

10/17 16:48, , 2F
時並不會因array size增加額外的引數傳遞成本,都是O(1)
10/17 16:48, 2F

10/19 10:40, , 3F
了解 所以兩者效率算是一樣了
10/19 10:40, 3F
文章代碼(AID): #1Ec-dp71 (C_and_CPP)
文章代碼(AID): #1Ec-dp71 (C_and_CPP)