اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

شهر ریاضی بازی-ریاضی

مقداردهی اولیه به آرایه‌ی پویا

0 امتیاز
764 نمایش

چرا نمی‌شه به آرایه‌ی پویا به شکل زیر مقداردهی اولیه کرد؟

int *a = {1, 2, 3};

راهی برای مقداردهی اولیه‌ی آرایه‌ی پویا وجود داره؟

هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پرسیده شده پنجشنبه ۲۲ فروردین ۱۳۹۲ در C++ توسط prodo  

1 پاسخ

0 امتیاز

آرایه‌ی پویا برای مقداردهی ابتدا باید یک آدرس معتبر داشته باشه. در حالت زیر

int x[5] = {0};
int *px = &x;

متغیر x آدرس مشخص داره که به px انتساب داده می‌شه. در حالت زیر

int *px = new int[5];
px = 1;
px+1 = 2;
...

باز هم px آدرس مشخص داره که به صورت پویا بهش انتساب داده شده. اما در حالت زیر

int *px = {1, 2, 3};

ثابت آرایه‌ای هیچ آدرس مشخصی نداره تا به px انتساب داده بشه و خود px هم که آدرسی نگرفته

هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده پنجشنبه ۲۰ تیر ۱۳۹۲ توسط prodo  

in codaei ke shoma gofti testeshoon kardi??kar neikonan

۱) لطفاً فارسی بنویسین.
۲) کدوم کد؟ حالت دوم رو که گفتم کار نمی‌کنه و درست نیست دیگه.