[問題] 指標陣列

看板C_and_CPP作者 (paris)時間14年前 (2010/01/05 11:15), 編輯推噓5(508)
留言13則, 8人參與, 最新討論串1/1
剛遇到一個問題... 若是宣告字串指標陣列,compile就可以過 但是若是宣告整數指標陣列,除了0外,其他都過不了 不知道是為什麼??? #include<stdio.h> #include<stdlib.h> int main(void) { char *name[3]={"lee","wu","wang"}; int i=0; int *array[3]={5,6,7}; int array1[3]={5,6,7}; for(i=0;i<3;i++) { printf("%s\n",*(name+i)); } for(i=0;i<3;i++) { printf("%d\n",*(array+i)); printf("%d\n",*(array1+i)); } system("pause"); return 0; } int *array[3]={0}; 或是int *array[3]={0,0,0}; 都可以過 如果是上列程式的...int *array[3]={1,2,3}; 都過不了... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.9.4.124

01/05 11:28, , 1F
過過~過過~過過過過~ 請講error message好嗎?
01/05 11:28, 1F

01/05 11:32, , 2F
invalid conversion from ‘int’ to ‘int*’
01/05 11:32, 2F

01/05 11:34, , 3F
錯誤訊息寫的很清楚不是嗎? 不要再只講「過不了」
01/05 11:34, 3F

01/05 11:37, , 4F
type 不一樣 就這樣
01/05 11:37, 4F

01/05 11:58, , 5F
推1F和3F....XD
01/05 11:58, 5F

01/05 11:59, , 6F
抱歉...下次會改進...
01/05 11:59, 6F

01/05 13:53, , 7F
建議指標部分再找書看看
01/05 13:53, 7F

01/05 15:40, , 8F
0的效果相當於NULL,並不是一個單純的'int'
01/05 15:40, 8F

01/05 21:33, , 9F
微軟的編譯環境定義 NULL 等於整數的零~
01/05 21:33, 9F

01/05 21:35, , 10F
實際上 NULL = '\0' 結束字元~
01/05 21:35, 10F

01/05 23:27, , 11F
int *array[3]={1,2,3}; //這個應該是兩維宣告吧???
01/05 23:27, 11F

01/05 23:28, , 12F
有人可以解說一下???我不懂>"<
01/05 23:28, 12F

01/06 00:22, , 13F
一維
01/06 00:22, 13F
文章代碼(AID): #1BGgwxB3 (C_and_CPP)