Avatar ·

كم عدد مستويات التداخل للمؤشرات التي يمكن أن تكون في C++؟

مرحباً بالجميع. أكتب بلغة C++ منذ حوالي عام، ويقلقني سؤال نظري واحد. أعلم أنه يمكن إنشاء مؤشرات إلى مؤشرات، مثل `int** ptr`، وحتى مؤشرات ثلاثية `int*** ptr`. ولكن إلى أي مدى يمكننا الذهاب؟ هل هناك أي قيود في معيار اللغة، أم أن هذا يعتمد على المترجم/المنصة؟ على سبيل المثال، يمكنني كتابة: ```cpp int a = 5; int* p1 = &a; int** p2 = &p1; int*** p3 = &p2; int**** p4 = &p3; // وهكذا... ``` ولكن ماذا لو حاولت إنشاء مؤشر بمستويات تداخل 100؟ هل سيتم تجميعه؟ وإذا كان الأمر كذلك، كيف سيعمل في وقت التشغيل؟ يبدو لي أنه عملياً لا أحد يستخدم أكثر من 2-3 مستويات، لكني أريد فهم الحدود الرسمية. كما أنني مهتم بمعرفة ما إذا كان هناك فرق بين C و C++ في هذا الشأن؟ لقد سمعت أنه في C يوجد قيود...