سلام خدمت دوستان.
من در زبان c یک ارایه دوبعدی از نوع char دارم که به صورت زیر تعریف کردم.

char myarray[1000][18];


بعد دوم ارایه همیشه شامل 18 المنت هست.
اما بعد اول ماکزیمم المنتش 1000 تا هست.
در صورتی که گاهی اوقات فقط در حد 2 یا 3 المنت (از بعد اول) نیاز هست . و تعریف 1000 المنت واسش فقط حافظه رو پر میکنه (+ توی اسکن کردن ارابه هم به شدت زمان تلف میکنه.)
فرض کنید من تعداد المنتی که نیاز دارم را در متغیری به نام k ذخیره کردم. حالا میشه به صورت char myarray[k][18] ارایه را تعریف کرد.
اما مشکلی که هست اینه که متغیر k تو تابع main مقدار دهی میشه.
از طرفی ارایه ی من global هست و نمیتونم توی main تعریفش کنم.
+ امکان استفاده از پوینتر ها را هم ندارم.

ممنون میشم راهنمایی کنید.