من یه تعداد زیادی متغییر نیاز دارم تعریف بکنم مثلا یه ارایه ی 1000 تایی ولی فقط 100 قرار هست توشون مقداری قرار بگیره میشه کاری کرد که اون ها تعریف بشن ولی هر وقت لازم شد حافظه بهشون اختصاص پیدا بکنه یا مثلا به آرایه یه تعداد عضو اضافه کنیم مثلا یک عضوی تعریفش بکنیم و بعد بهش عضو اضافه بکنیم؟
(۱۵-دى-۱۳۹۱, ۰۹:۵۵:۰۷)behzady نوشته است: [ -> ]من یه تعداد زیادی متغییر نیاز دارم تعریف بکنم مثلا یه ارایه ی 1000 تایی ولی فقط 100 قرار هست توشون مقداری قرار بگیره میشه کاری کرد که اون ها تعریف بشن ولی هر وقت لازم شد حافظه بهشون اختصاص پیدا بکنه یا مثلا به آرایه یه تعداد عضو اضافه کنیم مثلا یک عضوی تعریفش بکنیم و بعد بهش عضو اضافه بکنیم؟
من فرض کردم که شما با C کار میکنید نه بیسیک
اینکه یه تعداد عضو بهش اضافه بشه، .... نمیدونم(فک نکم بشه)
ولی اگه تعداد عضو حین اجرای برنامه مشخص بشه، میتونید از malloc استفاده کنید.
مثلا وسط برنامه تعداد عضو آرایه 300 تا تعیین شد. با malloc یه آرایه 300 تایی با استفاده از اشاره گر ها براش اختصاص میدید و ....
http://www.avrfreaks.net/index.php?name=...c&p=766087
مشکل من اینه که مثلا متغییر من یک دفعه همشون استفاده نمیشن مثلا
شروع برنامه 10 استفاده میشه بعد 11 بعد 12 بعد 13 بعد 9 ...
یکی یکی اضافه میشن تنها نکته ای که داره همه به پشت سر هم هستن و به هم متصل هستن و فقط تعداد رو میدونیم تازه چند بعدی هم هست
نمی شه هم گفت اولی که 10 شد از 10 به بعد تعریف کنیم شاید در نهایت ما به 1 تا 11 نیاز داشته باشیم
نبود نظری لنگ این کارم ها! کمک رو دریغ نکنید!
بیشتر توضیح بدین...
حداقل یه کدی چیزی بزارید تا بفهمیم مشکلتون کجاست , چون فهمیدن روال برنامه از روی توضیحی که دادید, خداییش کار سختیه!!!
این که آرایه چند بعدی باشه مشکلی نداره که...
برای کارتون به اشاره گر ها و اون malloc فکر کنید
بزارید مشکل رو بگم فرض کنید یه ماز داریم (هزارتو) روی یک صفحه ی شطرنج (هر خونه یه راه رو هست ) و روی خط ها دیوار قرارداره حالا شما رو یه جایی از این ماز قرار میدن شما چطوری میتونی بفهمی الان توی کدوم خونه هستی؟
من میخواستم کل ماز رو بگردم و بعد تشخیص بدم که در این صورت دو برابر خونه باید تعریف می کردم چون ممکن بود ما رو توی پایین ترین خونه بزارن پس هشت خونه زیر داریم یا ممکنه بالا ترین باشیم پس هشت خونه بالا داریم مجموع 16 تا حالا چپ و راست هم همین طور
اگه راه حلی برای مشکل بجز راه خودم رو هم دارید بگید ممنون میشم