|
 |
- - - - - - - - - - - - - - ผู้ให้การสนับสนุน- - - - - - - - - - - - - -
|
|
 |
กระทู้ #1843 [C] (จาก IP: 61.47.61.85)
ช่วยทำโจทย์ข้อนี้ให้หน่อยนะครับ ด่วนมากเลยครับ
ในขั้นตอนการประกาศตัวแปรอะเรย์ เราสามารถกำหนดค่าเริ่มต้นให้กับสมาชิกแต่ละตัวของอะเรย์ได้ และอนุโลมให้ programmer ไม่ต้องระบุจำนวนสมาชิกสำหรับบางมิติของอะเรย์ ถ้ากำหนดให้ a เป็นอะเรย์สามมิติ ดังนี้
int a[มิติที่ 1][มิติที่ 2][มิติที่ 3] = { { { , , , },{ , , , },{ , , , } },{ { , , , },{ , , , },{ , , , } } };
คำถาม มิติใดบ้างของอะเรย์ a ที่สามารถเว้นว่างได้ และมิติใดบ้างที่จะต้องระบุจำนวนสมาชิกเสมอ (แม้ว่าได้กำหนดค่าเริ่มต้นให้กับสมาชิกแต่ละตัวแล้วก็ตาม) เหตุใดจึงเป็นเช่นนั้นครับ
|
จากคุณ
:
mpdogs / lit_ya_e@hotmail.com [2008-02-23 00:18:23]
|
|
ความคิดเห็น #26583 (จาก IP: 203.158.4.155)
ผมทดลองเขียนดูได้ดังนี้
int x[][][]={{{1,2,3,4},{5,6,7,8},{9,0,1,2}},{{3,4,5,6},{7,8,9,0},{1,2,3,4}}}; for(int i=0;i<2;i++){ for(int j=0;j<3;j++){ for(int =0;k<4;k++){ printf("%.4d",x[i][j][k]);} printf("\n");} printf("\n");}
ผลที่ได้คือEror 12 ตำแหน่ง พอเดาได้ทันทีว่าตรงไหน(หาคำตอบเองครับ) สาเหตุผมเดาว่าcompilerไม่สามารถบอกขนาดที่แน่นอนของอะเรย์ได้ครับเพราะผู้เขียนโปรแกรมย์อาจต้องการมากกว่าที่กำหนด |
จากคุณ
:
spynin / spynin@hotmail.com [2008-03-02 07:16:05]
|
 |
|
- - - - - - - - - - - - - - ผู้ให้การสนับสนุน- - - - - - - - - - - - - -
|
|
|
|
|