أولاً التعريف الذي وضعته لا يترجم على gcc، أظنك أغفلت n ثانية، ليصبح التعريف
float *(*(**fonction [n][n])())[];
ثم، بداية من القوسين الداخليين باتجاه الخارج مصفوفة ثنائية البعد من مؤشرات من الدرجة الثانية مؤشر لإجراء الإجراء يعيد مصفوفة من مؤشرات من الدرجة الأولى للنوع float
ليصبح التعريف: مصفوفة ثنائية البعد من مؤشرات من الدرجة الثانية لــــــــ مؤشر لإجراء لا يأخذ أي معاملات و يعيــــــــــــــــــد مصفوفة من مؤشرات من الدرجة الأولى للنوع float
المشكلة الوحيدة في جوابي هي أن تعريف إجراءات تعيد مصفوفات ممنوع في C على gcc. لكن على ما يبدو تعريف مؤشرات لهذه الإجراءات مسموح 😲
لا أعرف معنى هذا السطر إلا بعد قراءة رد الأخ عبداللطيف ، لكن هي فائدة تعلمتها في حياتي ،لا تفكر بطريقة معقدة .. الأمور أبسط وأيسر من هذه الشخابيط .. البرمجة ليست استعراض عضلات ، لماذا نبحث عن تفسير لهذه الشخابيط 😒 ؟ لا تضيع وقتك في دقائق الأمور بينما يمكنك تطوير نفسك في أمور أهم .