السلام عليكم
لاحظت فيما يخص les tableau في c++ أنه دائما عندما يكـون هذا التابلو كـ Argument لدالة ما فـلا نحدد عدد خاناته مسبقا هكذا مثلا tableau[150]
بـل نتركهـا فارغة []tableau ما السبب ؟
السي لا يدعم إمرار المصفوفات كمعطيات للدوال. ما يحدث هو إختزال المصفوفة لمؤشر و إمرار مؤشر بدلا من ذلك. لذلك السطور الثلاثة المتتالية متساوية تماما:
size_t strlen(const char*);
size_t strlen(const char[]);
size_t strlen(const char[128]);
يعني ذلك أيضا أنه يجب عليك إمرار الحجم كمعطى منفصل لأن sizeof سترجع حجم المؤشر وليس المصفوفة. أو إستخدم std::vector الذي يريحك من التعامل مع هذه التفاصيل و implementation details أخرى كثيرة.
التعليقات