آرایه ها در زبان C++
آرایه یک نوع ساختار داده است که می تواند، در یک اندازه ثابت، مجموعه از عناصر که از نوع آرایه هستند را در خود نگه داری کند. به جای اعلان انفرادی متغیرهایی که از یک نوع هستند (مانند num1, num2, num3, … num99)، می توانید آن ها را به صورت یک آرایه تعریف کنید و با استفاده از index عنصر مورد نظر به آن دسترسی داشته باشید. آدرس حافظه تمام آرایه ها به صورت دنباله ای می باشد. پایین ترین آدرس مربوط به اولین عنصر و بالا ترین آدرس هم مربوط به آخرین عنصر یک آرایه است.
اعلان آرایه در C++
به منظور اعلان یک آرایه، باید نوع و تعداد عناصر آن را مشخص کنید. مانند نمونه زیر:
1 | type arrayName [ arraySize ]; |
این یک آرایه تک بعدی است. arraySize باید یک عدد صحیح از نوع int، ثابت و بزرگتر از صفر باشد. Type هم می تواند هر نوع داده معتبر در زبان C++ باشد. برای مثال به منظور ایجاد یک آرایه 10 عنصری با نام balance و از نوع double می توانید از دستور زیر استفاده کنید:
1 | double balance[10]; |
در کد بالا، balance یک متغیر به صورت آرایه است که می تواند 10 عضو از نوع داده double را در خود ذخیره کند.
مقداری دهی اولیه آرایه
برای مقدار دهی به عناصر یک آرایه چند روش وجود دارد، یکی از آن ها مقدار دهی به صورت زیر است:
1 | double balance[5] = {1000.0, 2.0, 3.4, 7.0, 50.0}; |
تعداد اعدادی که در بین {} قرار می گیرند، نمی تواند بیشتر از تعداد عناصر مشخص شده باشد. در مثال بالا نمی توان بیشتر از 5 عنصر برای آرایه تعریف کرد. اگر اندازه آرایه را حذف کنید، یک آرایه به اندازه کافی بزرگ برای نگه داشتن مقدار اولیه ایجاد می شود. بنابراین، اگر شما موقع نوشتن اندازه آرایه را مشخص نکنید، سایز آرایه بر اساس مقدار دهی اولیه آن تنظیم می شود. بنابراین اگر مثال بالا را به صورت زیر بنویسید:
1 | double balance[] = {1000.0, 2.0, 3.4, 7.0, 50.0}; |
سایز آرایه باز هم برابر با 5 خواهد، زیرا در هنگام مقدار دهی اولیه به آن، 5 عنضر مشخص شده است.
یک راه دیگر برای مقدار دهی به عناصر یک آرایه استفاده از روش زیر است:
1 | balance[4] = 50.0; |
دستور بالا، مقدار 50.0 را به عنوان مقدار عنصری که در خانه پنجم آرایه قرار دارد تنظیم می کند. توجه داشته باشید که اندیس گذاری آرایه ها از صفر شروع می شود. به تصویر زیر توجه کنید:
دسترسی به عناصر آرایه
به منظور دسترسی به عناصر یک آرایه می توانید از اندیس (index) استفاده کنید. مثال زیر نحوه دسترسی به دهمین عنصر آرایه balance را نشان می دهد:
1 | double salary = balance[9]; |
مثال زیر نحوه اعلان، مقدار دهی و استفاده از یک آرایه را نشان می دهد:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | #include <iostream> using namespace std; #include <iomanip> using std::setw; int main () { int n[ 10 ]; // n is an array of 10 integers // initialize elements of array n to 0 for ( int i = 0; i < 10; i++ ) { n[ i ] = i + 100; // set element at location i to i + 100 } cout << "Element" << setw( 13 ) << "Value" << endl; // output each array element's value for ( int j = 0; j < 10; j++ ) { cout << setw( 7 )<< j << setw( 13 ) << n[ j ] << endl; } return 0; } |
زمانی که کد بالا توسط کامپایلر زبان C++ اجرا شود، نتیجه زیر را تولید خواهد کرد:
1 2 3 4 5 6 7 8 9 10 11 | Element Value 0 100 1 101 2 102 3 103 4 104 5 105 6 106 7 107 8 108 9 109 |
جزئیات بیشتر در مورد آرایه ها
آرایه ها یکی از بخش های مهم زبان برنامه نویسی C++ محسوب می شوند و برنامه نویسان این زبان باید به خوبی آن ها را درک کنند. در جدول زیر چند شکل دیگر استفاده از آرایه ها در زبان C++ را مشاهده می کنید:
ردیف | مفهوم و توضیحات |
1 | آرایه های چند بعدی C++ از آرایه های چند بعدی پشتیبانی می کند. ساده ترین آرایه چند بعدی آرایه دو بعدی است. |
2 | ارسال آرایه ها به توابع در زبان C++ می توانید یک آرایه را به عنوان پارامتر به یک تابع ارسال کنید. |
3 | خروجی تابع از نوع آرایه در زبان C++ می توانید نوع بازگشتی یک تابع را از نوع آرایه قرار دهید. |
4 | اشاره گر به یک آرایه در زبان C++ می توانید بدون مشخص کردن اندیس آرایه، یک اشاره گر به اولین عنصر آرایه ایجاد کنید. |
هیچ نظری ثبت نشده است