PDA

View Full Version : مبتدی: آرایه یک بعدی و دو بعدی؟



jahadgar91
سه شنبه 01 بهمن 1392, 21:56 عصر
سلام دوستان می خوام اگه میشه درمورد آرایه ها(یک بعدی و دو بعدی در c) در این تایپیک بحث بشه بحث های مثل مقدار دهی،چاپ در صفحه و الگوریتم ها و نکته های خلاصه هر چیزی که لازمه مبتدی ها ار جمله من بدونن. امید واریم که با حوصله ،هر چیزی که میدونید بگید تا ما مبتدی ها ازش استفاده کنیم .

دانايى سرآمد همه خوبى‏ها و نادانى سرآمد همه بدى‏هاست.

fahimeh1512
چهارشنبه 02 بهمن 1392, 12:35 عصر
درمورد ارایه های یک بعدی و دو بعدی و تفاوتشون با اشاره گر اگه میخوای بدونی اینجا که نمیشه همه نکات رو گفت سایت http://www.cplusplus.com یه فایل اموزشی داره اونو بخون نکات زیادی توش داره

siryahya
جمعه 04 بهمن 1392, 22:56 عصر
void arraysum(int x[], int y[], int len, int out[])

{

for(int i=0;i<len;i++)

out[i]=x[i]+y[i];

}

asdasd123123
شنبه 05 بهمن 1392, 09:48 صبح
درمورد ارایه های یک بعدی و دو بعدی و تفاوتشون با اشاره گر اگه میخوای بدونی اینجا که نمیشه همه نکات رو گفت سایت http://www.cplusplus.com یه فایل اموزشی داره اونو بخون نکات زیادی توش داره
آرایه ی هر چند بعدی هیچ تفاوتی با اشاره گر ندارد. در واقع آرایه یه اشاره گر ثابت است. منظور از اشاره گر ثابت که همون اسم آرایه است اینه که اونو نمیشه جا به جا کرد. (به چیز دیگه اشاره نمی کنه، فقط به چیزی که اولین بار اشاره کرده اشاره می کنه.)

fahimeh1512
شنبه 05 بهمن 1392, 11:30 صبح
آرایه ی هر چند بعدی هیچ تفاوتی با اشاره گر ندارد. در واقع آرایه یه اشاره گر ثابت است. منظور از اشاره گر ثابت که همون اسم آرایه است اینه که اونو نمیشه جا به جا کرد. (به چیز دیگه اشاره نمی کنه، فقط به چیزی که اولین بار اشاره کرده اشاره می کنه.)

تفاوت که داره اشاره گر خیلی دست برنامه نویس رو باز میذاره به ارایه وقتی یه حافظه مثلا صد خونه ای رو تخصیص میدی حداکثر تا خونه صدم میتونی پیش بری اگه بخوای به خارج از این محدوده دسترسی داشته باشی خود برنامه کرش میکنه
ولی اگه با اشاره گر به همون محدوده ارایه اشاره کنی میتونی از اون محدوده عبور کنی و به خونه های بعد از اون محدوده دسترسی داشته باشی بدون این که مشکلی تو برنامه پیش بیاد بااستفاده از اشاره گر باید خود برنامه نویس کنترل کنه ک داره به حافظه مجاز دسترسی پیدامیکنه یا نه
همین ویژگی اشاره گر باعث شده قابلیت انعطاف زبان سی برای برنامه نویس بالا بره از طرف دیگه ریسک های زیادی رو براش ایجاد میکنه ارایه یه نمونه خیلی خیلی محدود از اشاره گره

asdasd123123
شنبه 05 بهمن 1392, 12:15 عصر
تفاوت که داره اشاره گر خیلی دست برنامه نویس رو باز میذارهاشاره گر ثابت میدونی چیه؟

به ارایه وقتی یه حافظه مثلا صد خونه ای رو تخصیص میدی حداکثر تا خونه صدم میتونی پیش بری اگه بخوای به خارج از این محدوده دسترسی داشته باشی خود برنامه کرش میکنه
ولی اگه با اشاره گر به همون محدوده ارایه اشاره کنی میتونی از اون محدوده عبور کنی و به خونه های بعد از اون محدوده دسترسی داشته باشی بدون این که مشکلی تو برنامه پیش بیاد بااستفاده از اشاره گر باید خود برنامه نویس کنترل کنه ک داره به حافظه مجاز دسترسی پیدامیکنه یا نه
همین ویژگی اشاره گر باعث شده قابلیت انعطاف زبان سی برای برنامه نویس بالا بره از طرف دیگه ریسک های زیادی رو براش ایجاد میکنه ارایه یه نمونه خیلی خیلی محدود از اشاره گرهاشاره گر هم اگه بدون اشاره به یه متغییر ساخته شده توسط برنامه استفاده بشه برنامه کرش می کنه. فرق اشاره گر با اشاره گر ثابت اینه که اگه x یه اشاره گر باشه میشه x++ کرد یعنی محل اشاره رو یکی (یک برحسب نوع اشاره گر) جلو برد ولی اگه اشاره گر ثابت باشه نمیشه x++ کرد دقیقا مثل آرایه. ولی با این حال میشه محتویات x+1 رو بدست آورد حتی اشاره گر ثابت دقیقا مثل آرایه. تنها فرقشون اینه که اعلان آرایه علاوه بر ایجاد یه اشاره گر ثابت یه محدوده ای از حافظه رو در اختیار می گیره ولی در حالت عادی اعلان یه اشاره گر این کار رو نمی کنه. (مگه اینکه با new حافظه پویا اختصاص داده بشه.)

fahimeh1512
شنبه 05 بهمن 1392, 13:34 عصر
تنها فرقشون اینه که اعلان آرایه علاوه بر ایجاد یه اشاره گر ثابت یه محدوده ای از حافظه رو در اختیار می گیره ولی در حالت عادی اعلان یه اشاره گر این کار رو نمی کنه. (مگه اینکه با new حافظه پویا اختصاص داده بشه.)
پس ارایه با اشاره گر (حتی اشاره گر ثابت) یه فرقی داره:لبخندساده: