ورود

نسخه کامل مشاهده نسخه کامل : يك سوال فني در مورد آرايه ها در c



arash_black
28-02-2009, 00:56
با عرض سلام ،

من براي نوشتن يك برنامه با زبان C ، بايد طول يك آرايه را از ورودي دريافت كنم و سپس آرايه را با طول دريافت شده از كاربر تعريف كنم كه براي اينكار از روش زير استفاده كردم:



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


كه با خطاي زير مواجه شدم :


Expression syntax in function main

البته براي حل اين مشكل از دستور #define و constant هم استفاده كردم كه نتيجه اي نداشت.
آيا مي توان طول آرايه را از ورودي دريافت كرد؟
چگونه؟؟؟؟

H_E_A
28-02-2009, 15:36
باید دستی براش حافظه ذخیره کنی یعنی از تابع malloc استفاده کنی توضیحش تو کتابا نوشته

roya_borhany
28-02-2009, 16:30
در زبان c نمی توان این گونه آرایه را مقدار دهی کرد. بهتر است که یک حد برای آن در نظر بگیرید و بعد از کاربر عددی پایین تر از آن حد را دریافت کنید

مثلا: arrr[50]
و کاربر مقداری پایین تر از 50 را وارد کند. البته این حد نباید خیلی بزرگ باشد که حافظه را اشغال کند

ppp1486
07-03-2009, 08:02
در C نمی توان طول آرایه را جداگانه تعریف کرد زیرا error می گیرد
همان جمله ی[50]int arr کافی است

_H2_
07-03-2009, 12:02
سلام
همانطور که دوستی اشاره کردند در C زمان هخمانشیان، باید از تابع malloc استفاده کنید.
یک چیزی شبیه این


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ولی چند سال بعد ++C با جان و قدرت تازه ای آمد!
(در واقع آن C اولیه بسیار بی ارزش و ناتوان بود ولی این شهرت خوب از ++C برجا مانده)

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق باشید.