امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
سوال در مورد آرایه
نویسنده پیام
Iron_Fist غایب
مدیر بازنشسته
*****

ارسال‌ها: 1,456
موضوع‌ها: 70
تاریخ عضویت: آبان ۱۳۸۴

تشکرها : 109
( 456 تشکر در 134 ارسال )
ارسال: #1
at  سوال در مورد آرایه
با سلام به دوستان

من می خواهم آرایه ای تعریف کنم که ابعاد آن در ابتدا معلوم نباشد و
بعد یکی یکی در خانه های آن عدد قرار دهم
آیا امکانپذیر هست ؟
در کل مشکل اینه که هنگام تعریف ابعاد آرایه را نمی دونم و بعدآ می خواهم
مقدار توی خانه هاش قرار بدم

با تشکر
(آخرین ویرایش در این ارسال: ۱۳-خرداد-۱۳۸۵, ۰۰:۴۵:۱۷، توسط Iron_Fist.)
۱۳-خرداد-۱۳۸۵, ۰۰:۴۱:۲۲
ارسال‌ها
پاسخ
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #2
RE: سوال در مورد آرایه
با سلام
می تونی با تابع malloc این کارو بکنی به مثال زیر توجه کن :
کد:
float *p=(float *)malloc(n*sizef(float));
چون نوع خروجی تابع void هست خودمان نوعی برای آن تعیین میکنیمو چون حافظه پویا است و یک آرایه همان اشاره گر پس آرایه را اشاره گر تعریف می کنیم
و داخل آن را به اندازه float تقسیم می کنیم n*4 هم تعداد بایت هاست ,نوع float داخل آن آرایه را به بخشهای 4 بایتی تقسیم می کند


در ضمن تابع داخل هدر زیر است :
#include<malloc.h>

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
(آخرین ویرایش در این ارسال: ۱۳-خرداد-۱۳۸۵, ۰۱:۵۵:۵۶، توسط hamed_Arfaee.)
۱۳-خرداد-۱۳۸۵, ۰۱:۵۳:۱۷
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : فاطمه وطن دوست
Iron_Fist غایب
مدیر بازنشسته
*****

ارسال‌ها: 1,456
موضوع‌ها: 70
تاریخ عضویت: آبان ۱۳۸۴

تشکرها : 109
( 456 تشکر در 134 ارسال )
ارسال: #3
RE: سوال در مورد آرایه
حامد جان من منظور شما رو نفهمیدم
حالا منظورم رو به یه شکل دیگه بیان می کنم
ببین ما کد زیر رو داریم
اگه من ندونم سایز  آرایه a چیه باید چی کار کنم
کد:
#include <iostream.h>

void main()
{
    int a[10];

    for(int b=0;b<10;b++)
    {
        a[b]=b;
        cout<<a[b]<<endl;
    }
}

۱۳-خرداد-۱۳۸۵, ۰۲:۳۴:۳۹
ارسال‌ها
پاسخ
تشکر شده توسط : فاطمه وطن دوست
Iron_Fist غایب
مدیر بازنشسته
*****

ارسال‌ها: 1,456
موضوع‌ها: 70
تاریخ عضویت: آبان ۱۳۸۴

تشکرها : 109
( 456 تشکر در 134 ارسال )
ارسال: #4
RE: سوال در مورد آرایه
چیزی مثل ReDim Preserve وی بی تو C++ وجود نداره
که در ابتدا ابعاد آرایه رو تعریف نکنیم
می شه تو Vector در ابتدا ابعاد Vector رو تعریف نکرد
۱۳-خرداد-۱۳۸۵, ۱۳:۳۶:۲۳
ارسال‌ها
پاسخ
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #5
RE: سوال در مورد آرایه
با سلام
آرایه ها خودشون اشاره گر هستند و این چیزی که شما می خواهیید یعنی حافظه پویا که بعد از کامپایل برنامه به ارایه داده بشه پس می آییم بصورت زیر عمل می کنیم :
یک اشاره گر بنام p تعریف می کنیم تا آدرس اولین خانه آرایه را در خود ذخیره کند و در ضمن نوع آرایه را هم float بیان می کنیم برای ذخیره اعداد اعشاری و با استفاده از تابع mallocاین آرایه را ایجاد می کنیم و چون نوع خروجی این تابع voidاست پس ما برای آن نوع float را انتخاب می کنیم و داخل تابع برای تعیین مقدار فضای آرایه یعنی اینکه چند بایت حافظه را به خود اختصاص دهد متعییر n را به مقدار حافظه ای که یک متغییر float اشغال می کند ضرب می کنیم و بدین صورت مقدار فضای لازم ایجاد می شود.
ئ در ضمن وقتی که ما خواستیم نوع خروجی تابع را عوض کنیم داخل آن را هم پارتیشن بندی کردیم یعنی به خانه های 4 بایتی تقسیم کردیم چون هر متغییر از نوع float 4 بایت فضا به خود اختصاص می دهد

ودر آخر اینکه این فضای بوجود آمده را باید در انتهای برنامه آزاد کنید با دستور زیر :
free(p);

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
۱۳-خرداد-۱۳۸۵, ۱۴:۰۲:۵۴
وب سایت ارسال‌ها
پاسخ
Iron_Fist غایب
مدیر بازنشسته
*****

ارسال‌ها: 1,456
موضوع‌ها: 70
تاریخ عضویت: آبان ۱۳۸۴

تشکرها : 109
( 456 تشکر در 134 ارسال )
ارسال: #6
RE: سوال در مورد آرایه
حامد جان من یه چیزایی فهمیدم ولی نه به طور کامل !
اگه برات ممکنه صحبتت رو رو این کدی که دادم پیاده کن

با تشکر
۱۳-خرداد-۱۳۸۵, ۱۴:۱۰:۴۷
ارسال‌ها
پاسخ
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #7
RE: سوال در مورد آرایه
کد:
#include <stdio.h>
#include <iostream.h>
#include <malloc.h>
void main()
{
// int a[10];
int c;
scanf("%d",&c);
int *p=(int *)malloc(c*sizeof(int));
for(int b=0;b<c;b++)
{
p[b]=b;
cout<<p[b]<<endl;
}
free(p);
}

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
۱۳-خرداد-۱۳۸۵, ۱۴:۵۱:۵۰
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : فاطمه وطن دوست
Iron_Fist غایب
مدیر بازنشسته
*****

ارسال‌ها: 1,456
موضوع‌ها: 70
تاریخ عضویت: آبان ۱۳۸۴

تشکرها : 109
( 456 تشکر در 134 ارسال )
ارسال: #8
RE: سوال در مورد آرایه
حامد جان دمت گرم همین رو می خواستم
از اینکه به من کمک کردید ممنونم
۱۳-خرداد-۱۳۸۵, ۱۵:۵۲:۲۴
ارسال‌ها
پاسخ
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #9
RE: سوال در مورد آرایه
خواهش می کنم
قابل شما رو نداشت

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
۱۳-خرداد-۱۳۸۵, ۱۶:۲۴:۱۱
وب سایت ارسال‌ها
پاسخ
Iron_Fist غایب
مدیر بازنشسته
*****

ارسال‌ها: 1,456
موضوع‌ها: 70
تاریخ عضویت: آبان ۱۳۸۴

تشکرها : 109
( 456 تشکر در 134 ارسال )
ارسال: #10
RE: سوال در مورد آرایه
یه سوال برام پیش اومد و اون اینه که اگه ما این دستور رو در یک
تابع بکار ببریم یا به طور کل یک اشاره گر درون تابع تعریف کنیم
آیا نیازی به آزاد سازی حافظه با همون فیری وجود داره یا با اومدن
بیرون از تابع به طور خودکار فضا آزاد می شه
۱۶-خرداد-۱۳۸۵, ۰۰:۱۴:۴۱
ارسال‌ها
پاسخ
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #11
RE: سوال در مورد آرایه
اگر در داخل همون تابع این آرایه رو بوجود آورده باشی بله مسلما خود به خود موقع خروج از بین خواهد رفت ولی کار از محکم کاری عیب نمی کنه بازه هم آزادش کن

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
۱۶-خرداد-۱۳۸۵, ۰۱:۰۰:۱۱
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : فاطمه وطن دوست


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
Question کاراکتر و آرایه zeinab.kh 0 1,484 ۲۰-دى-۱۳۹۳, ۱۶:۳۳:۴۶
آخرین ارسال: zeinab.kh
  [فوری] کمک در جدا سازی آرایه و رشته imanhelmi 1 2,897 ۲۴-خرداد-۱۳۹۳, ۱۸:۴۱:۵۲
آخرین ارسال: vigraz
  چگونگی قرار دادن آرایه در فایل h.mallaki67 2 4,087 ۰۲-فروردین-۱۳۹۲, ۱۷:۵۰:۰۸
آخرین ارسال: babyy
  سوال در مورد infix ها Super Robot 1 2,738 ۱۸-دى-۱۳۹۱, ۱۶:۲۷:۲۸
آخرین ارسال: Ghoghnus
  [سوال] 2 تا سوال در مورد c++ shabnam_khaleh 3 4,617 ۳۱-مرداد-۱۳۹۱, ۲۱:۰۵:۵۳
آخرین ارسال: masterhe3ar
  سوال در مورد linq zahra_m_alipoor 1 3,314 ۱۶-مرداد-۱۳۹۱, ۱۵:۵۶:۰۹
آخرین ارسال: moribermuda
  سوال در مورد ی علامت salehjg 1 2,485 ۰۵-شهریور-۱۳۹۰, ۱۹:۴۰:۳۲
آخرین ارسال: babyy
  [سوال] یه سوال راجع به آرایه ها در C نگار85 0 2,284 ۲۸-خرداد-۱۳۹۰, ۲۱:۵۹:۵۳
آخرین ارسال: نگار85
  استفاده از آرایه ali.vpn 0 2,081 ۲۴-خرداد-۱۳۸۹, ۱۵:۳۱:۴۴
آخرین ارسال: ali.vpn
  یک سوال در مورد زمان بندی cin Fire_Falcon 3 4,231 ۲۹-اردیبهشت-۱۳۸۹, ۲۲:۱۸:۱۲
آخرین ارسال: dreamvbfox

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS