close
دانلود فیلم
مقداردهی اوليه آرايه در سی

مقداردهی اوليه آرايه

مانند يک متغير هنگام اعلان يک آرايه مقدار عناصر آنرا می توان تعيين کرد. آرایه های سراسری به طور پيش فرض توسط صفر مقداردهی می شوند. اما وقتی یک آرایه به صورت محلی تعریف می شود محتوایش نامعین است. بنابراين بهتر است آنرا مقداردهی اوليه کرد.

برای انجام اين کار در خط اعلان به دنبال اسم آرايه ليست مقادير عناصر آن به ترتيب درون يک آکولاد نوشته می شود.


مثال. دستور زير مقدار 100 را به array[0] و 200 را به array[1]و 300 را به array[2] و 400 را به array[3] اختصاص می دهد.

int array[4] = { 100, 200, 300, 400 };


اگر اندازه آرايه ذکر نشود کامپايلر اندازه کافی را برای ذخيره ليست مقادير ذکر شده درنظر می گيرد.


مثال. عبارت زير مشابه مثال قبل عمل می کند. اندازه آرايه توسط کامپايلر 4 درنظرگرفته می شود.

int array[] = { 100, 200, 300, 400 };


اگر تعداد مقادير درون آکولاد کمتر از تعداد عناصر آرايه باشد، بقيه عناصر بطورخودکار صفر درنظر گرفته می شوند. اگر مقادير بيشتر از اندازه آرايه باشد کامپايلر خطا می گيرد.


مثال. عناصر array[3] تا array[9] با صفر مقداردهی می شوند.

int array[10] = { 1, 2, 3 };


در آرايه های چندبعدی ليست مقادير به ترتيب سطری در عناصر قرار می گيرند.


مثال. در آرايه دو بعدی زير

int array[4][3] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };

مقادير به صورت زير ذخيره می شوند:
array[0][0] برابر با 1
array[0][1] برابر با 2
array[0][2] برابر با 3
array[1][0] برابر با 4
array[1][1] برابر با 5
array[1][2] برابر با 6
...
array[3][1] برابر با 11
array[3][2] برابر با 12

برای خوانائی بيشتر مقادير هر سطر را می توان درون يک جفت آکولاد دسته بندی کرد.


مثال. نتيجه دستورزير مشابه مثال قبل است.

int array[4][3] = { { 1, 2, 3 } , { 4, 5, 6 } , { 7, 8, 9 } , { 10, 11, 12 } };

به کانال تلگرام سایت ما بپیوندید