PDA

View Full Version : مشکل در مقدار دهی اولیه



Faraz7
جمعه 12 اسفند 1390, 19:31 عصر
سلام

char* str=new char[100];
char* a=new char[strlen(str)];

تو این کد برنامه متغیر a رو میسازه ولی اندازش دیگه strlen(str نیست. اگه میشه منو کمک کنین

pswin.pooya
جمعه 12 اسفند 1390, 23:11 عصر
تابع strlen اندازه رشته رو بر می گردونه نه اندازه آریه. در حقیقت تابع strlen از اول یه آرایه شروع میکنه تا زمانی که به کاراکتر null نرسه ادامه میده و می شماره. توی مثال شما ممکنه هر دفعه strlen یه مقدار متفاوت رو بر گرودونه. بهتره همیشه اندازه آرایه رو به متدهاتون ارسال کنید.