[問題] 存取結構的元素

看板C_and_CPP作者 (海派甜心)時間11年前 (2014/06/02 12:40), 編輯推噓0(004)
留言4則, 2人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) vc++6 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) malloc.h 問題(Question): 如何把程式中的 pArr[i].age pArr[i].name pArr[i].score 原本是 . 替換成 -> 程式碼(Code):(請善用置底文網頁, 記得排版) # include <stdio.h> # include <malloc.h> struct Student { char name[100]; int age; float score; }; //學生資料 int main(void) { int len,i; printf("班上人數有\n"); printf("Len="); scanf("%d",&len); struct Student * pArr; pArr=(struct Student *)malloc(len * sizeof(struct Student)); for(i=0;i<len;++i){ printf("請輸入第幾%d個學生的資料\n",i+1); printf("age = "); scanf("%d",&pArr[i].age); printf("name = "); scanf("%s",pArr[i].name); printf("score = "); scanf("%f",&pArr[i].score); } 補充說明(Supplement): 老師之前有教 . 和->可以交互使用 我自己試 可是不知道怎麼替換 pArr[i].age 寫成 pArr -> age pArr[i].name 寫成pArr -> name pArr[i].score 寫成pArr-> score 然後for循環最後 pArr++; //這樣指向下一個結構 可是沒試成功 想請教各位 -- 這周是世界好友周,如果你愿意, 請把這條信息發給你所有的好朋友。 也包括我。看有 多少人會回發給你! 世界好友周:務必要看! 出生一張紙,開始一輩子; 畢業一張紙 ,奮斗一輩子; 婚姻一張紙,折磨一輩子; 做官一張紙,斗爭一輩子; 金錢一張紙, 辛苦一輩子; 榮譽一張紙,虛名一輩子; 看病一張紙,痛苦一輩子; 悼詞一張紙,了 結一輩子; 淡化這些紙,明白一輩子; 忘了這些紙,快樂一輩子! 當大部分人都在關 注你飛得高不高時, 只有少部分人關心你飛得累不累, 這就是--友情。 再忙,也要照 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.37.149.250 ※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1401684057.A.6C7.html

06/02 12:45, , 1F
(pArr+i)->age
06/02 12:45, 1F

06/02 12:48, , 2F
. 是實體物件時使用,-> 是指標使用
06/02 12:48, 2F

06/02 12:49, , 3F
1F 推文的如果要用 . 就要改成 *(pArr+i).age
06/02 12:49, 3F

06/02 14:57, , 4F
感謝 解決了
06/02 14:57, 4F
文章代碼(AID): #1JZ01PR7 (C_and_CPP)