Re: [問題] 指標的指標 與 二維的指標問題

看板C_and_CPP (C/C++)作者 (小風)時間16年前 (2009/06/13 23:36), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/3 (看更多)
※ 引述《su35 (su35)》之銘言: : 編譯器是vc++ 2008 : 我的書是用turbo c 去寫的 所以好多語法在vc++都沒辦法用 : 有幾個問題要問一下 : 如果我要寫成一個function 在二維陣列的指標 要怎麼去宣告 : 因為要填元素個數 有辦法在宣告不填入元素個數嗎 答: 可以, 可以動態配置. 做法後述. : 另一個問題 該書在宣告一個指標後 會給於一個位址 我照打都會發生問題 : vc++要怎麼去寫 程式如下 : char **pa; : pa= 0x10000; : 下列程式編譯能過 但是要執行時會當掉 : 請問哪裡有問題 答: 簡單的說, 問題出在 pa 在還未有實體之前, 就對它存取. 以下的改法, 或許你看了就明白了. : #include <stdio.h> : #include <stdlib.h> : void main(void) : { : char **pa; : int i; /* 動態配置 3 個 (char *) 的 pointer 給 pa */ pa = (char **)malloc(sizeof(char *) * 3); : *(pa+0)="BOOK"; : *(pa+1)="YOU"; : *(pa+2)="C++"; : for(i=0;i<3;i++) : { : printf("%s\n",*(pa+i)); : } /* malloc 過的記憶體要還給系統 */ free(pa); : system("pause"); : } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.171.78.205
文章代碼(AID): #1ACyTxz_ (C_and_CPP)
文章代碼(AID): #1ACyTxz_ (C_and_CPP)