سبد خرید

بستن سبد خرید

سبد خرید شما خالی است.

تعداد محصول: 0 کل قیمت: تومان0

بدست آوردن طول آرایه با ++C

بدست آوردن طول آرایه در ++C ، از آنجایی که در ++C توابع size یا length وجود ندارد مجبوریم برای بدست آوردن طول آرایه در ++C از تابع sizeof استفاده کنیم. کار تابع sizeof به این صورت است که سایز (میزان فضای اشغالی در حافظه) متغیر داده شده را به ما برمیگرداند. از آنجایی که سایز یک آرایه برابر است با سایز یکی از عناصر آرایه ضرب در طول آرایه در نتیجه برای بدست آوردن طول یک آرایه کافیست سایز کل آرایه را بر سایز یکی از عناصر آن تقسیم کنیم تا طول آرایه بدست آید.

آرایه ها

آرایه مجموعه اي از عناصر همنوع است. هر آرایه داراي نامی است که مانند متغیرهاي معمولی نامگذاري میشود. آرایه یک مجموعه از محلهاي متوالی حافظه است .هر محل یک عنصر آرایه به شمار می رود. استفاده (index) براي دسترسی به عناصر آرایه از متغیري بنام اندیس میگردد. به همین دلیل، آرایه را متغیر اندیس دار میگویند.براي دسترسی به هر عنصر آرایه باید محل آنرا در آرایه بدانیم یعنی یک اندیس به محل آن داشته باشیم.

 

مثال: برنامه ای بنویسید که طول یک آرایه را برای ما چاپ کند؟

جواب کد:

#include <iostream>
using namespace std; 
  
int main() 
{ 
    int  arr[] = {1, 2, 3, 4, 5, 6};
    int length = sizeof(arr)/sizeof(arr[0]); 
    cout << "Length of arr[] is "<< length; 
    return 0; 
}

 

البته طول یک آرایه را با استفاده از پوینتر (pointer) و اختلاف آدرس خانه های آرایه نیز میتوان بدست آورد. از آنجایی که نحوه ی کار کمی پیچیده است فقط میتوانم بگویم که *(&arr + 1) – arr اختلاف آدرس شروع آرایه تا آدرس بعد از آن را برمیگرداند که همان طول آرایه است.

و کد زیر طول آرایه را بدون استفاده از sizeof چاپ میکند.

کد بدون استفاده از sizeof:

#include <iostream>
using namespace std; 
  
int main() 
{ 
    int  arr[] = {1, 2, 3, 4, 5, 6};
    int length = *(&arr + 1) - arr; 
    cout << "Length of arr[] is "<< length; 
    return 0; 
}

 

خروجی هر دو برنامه به صورت زیر خواهد بود:

Length of arr[] is 6

پست های مشابه

19تیر 1400

CSS چیست و نقش آن در طراحی وب سایت که در این پست، طراحی و ساخت سایت را توضیح می دهیم، پس با ما همراه باشید. امروزه نرم افزارهایی برای طراحی وب سایت پدید آمده است که این امکان را می دهد که حتی بدون نیاز به دانش برنامه نویسی وب سایتی تولید و توسعه […]

63

0

18فروردین 1400

از آنجايي که دانشجويان زيادي جهت سفارش پروژه هاي C++ به سايت مراجعه نموده اند، در این مطلب پروژه ای مربوط به تبدیل اعداد دهدهی به اعداد دودویی است که در اختیار شما دوستان قرار دادیم…

82

0

2اسفند 1399

بدست آوردن تعداد بیشترین مقسوم علیه دربین چند عدد با پایتون که بسیاری از دانشجویان به دنبال این سورس کد هستند. در این مقاله…

674

0

دیدگاه و پرسش