※ 引述《datagram.bbs@ptt.cc ()》之銘言:
: int main()
: {
: int a=4;
: float uu[a]={0};
: printf("%f",uu[3]);
: return 0;
: }
: 這個寫法有錯 ,應該是錯在 float uu[a]={0} 這一行
: 為什麼已經令了 a=4 ,卻不能 把a之值 放入 uu[4]呢?
: 有沒有什麼方法可以解決這種問題?
: 因為我在寫 header檔時, function(X,X,G)
: G是一個int,要丟進此function運作,而此function中設了一個array
: int AA[G]={0}; ==>這會出現錯誤。這種錯誤跟上面也是一樣的錯誤。
這是靜態配置記憶體..
意思是, 你無法在一開始的時候先不決定陣列的大小..
陣列的大小得要一開始就決定 !! (雖然好像新制的 C 改了)
--------
如果, 你需要可以隨著使用者的需求 或是依照不同的條件來增加陣列的大小..
C -- malloc 函數搭配指標使用 (這有一系列的 function 請自查)
C++ -- new , delete ..
STL -- vector<> , list<> , deque<> ... etc ...
--
不要以為你覺得電腦可以這樣做 !! (叫貞子從螢幕裡面爬出來是不可能的)
你要知道 .. 電腦能做什麼 & 你想做什麼 ~
寫程式就是把上述兩者結合罷了
--
◣You Die◢
◥╭──╮◤
●●
╰ ∞ ╯
◢ ╰ ╯ ◣
◤ ◥
--
╭──── Origin:<不良牛牧場> bbs.badcow.com.tw (210.200.247.200)─────╮
│ ↘ Welcome to SimFarm BBS -- From : [218.162.77.126] │
╰◣◣◢ ◢◢《不良牛免費撥接→電話:40586000→帳號:zoo→密碼:zoo》 ◣◣◢ ─╯