C++ Omit Array Size

🔹 تعریف

  • در ++C می‌توان هنگام مقداردهی اولیه آرایه، اندازه آن را نداد.

  • کامپایلر به صورت خودکار تعداد عناصر را تشخیص می‌دهد.

  • این کار برای آرایه‌های ثابت و از پیش مقداردهی شده بسیار مناسب است.

🔹 ساختار

type name[] = {value1, value2, value3, ...};
  • کامپایلر تعداد عناصر {} را می‌شمارد و اندازه آرایه را تعیین می‌کند.

1️⃣ مثال با int

#include <iostream> using namespace std; int main() { int numbers[] = {10, 20, 30, 40, 50}; int size = sizeof(numbers) / sizeof(numbers[0]); // محاسبه تعداد عناصر cout << "Array size = " << size << endl; for (int i = 0; i < size; i++) { cout << numbers[i] << " "; } }

🔹 خروجی:

Array size = 5 10 20 30 40 50

2️⃣ مثال با char

#include <iostream> using namespace std; int main() { char letters[] = {'A', 'B', 'C', 'D'}; for (int i = 0; i < sizeof(letters)/sizeof(letters[0]); i++) { cout << letters[i] << " "; } }

🔹 خروجی: A B C D

3️⃣ نکات مهم

  1. فقط هنگام مقداردهی اولیه می‌توان اندازه را نیاورد.

  2. برای آرایه‌های خالی یا بدون مقداردهی اولیه باید اندازه مشخص شود.

  3. برای محاسبه تعداد عناصر آرایه:

int size = sizeof(array) / sizeof(array[0]);