[問題] 簡單陣列觀念問題

看板C_and_CPP (C/C++)作者 (tkforce)時間16年前 (2009/03/08 10:46), 編輯推噓3(302)
留言5則, 4人參與, 最新討論串1/1
自己看了網站上的一些陣列介紹(C++ 知道說一個陣列名稱是陣列起始的位址 後面的引數是其位移量 那我想問說陣列是不是一個指標?(因為他是存位址) 也就是說 int array[10]; array[1] = 5; //這行是表示把5這個數複製到array的第2個空間 //還是array第二個空間指到5的所在位址,而第二個空間只存5的記憶體 位址? 但是若是址標 cout<<array[1];//這行應該要改成*array[1]這樣才會印出5不是嗎? 越想越奇怪...我知道是我自己沒搞清楚....拜託各位點醒我QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.119.191.23

03/08 10:53, , 1F
try *(array+1)
03/08 10:53, 1F

03/08 10:54, , 2F
不是指標。我的理由是 arr 跟 &arr 得到的都是同一個值
03/08 10:54, 2F

03/08 10:55, , 3F
也就是存放指向陣列存放起始處的記憶體位址。
03/08 10:55, 3F

03/08 12:47, , 4F
你宣告陣列的型別是int 當然就是把5複製到array[1]
03/08 12:47, 4F

03/08 14:03, , 5F
int *ary=new int[10]; ... *(ary+i)==ary[i]
03/08 14:03, 5F
文章代碼(AID): #19ip6WE9 (C_and_CPP)
文章代碼(AID): #19ip6WE9 (C_and_CPP)