املأ جميع المكدس المتاح بقيمة محددة [مكررة

StackOverflow https://stackoverflow.com/questions/20353628

  •  25-08-2022
  •  | 
  •  

سؤال

أحتاج إلى ملء جميع مساحة المكدس المتاحة مع حرف محدد لأغراض التنميط.

بادئ ذي بدء ، هل هناك طريقة آمنة للقيام بذلك على Android (ربما بعض الوظائف الخاصة بالمترجمات) في C ++؟ إذا لم يكن الأمر كذلك ، فهل لي أن أفترض أن عنوان المتغير الأول المعلن في وظيفة ما هو "بداية" المكدس "غير المستخدم"؟ إذا لم يكن هناك طريقة للحصول على مؤشر المكدس الحالي ، شيء مثل قيمة ESP على x86؟

هل كانت مفيدة؟

المحلول

مع ARM ، تحتاج إلى التفكير في استدعاء الاتفاقية لأن وظيفة مع أكثر من أربع حجج سوف تسربها للتكديس. أجد أنه أكثر أمانًا للاستخدام GCC's __builtin_frame_address.

Built-in Function: void * __builtin_frame_address (unsigned int level)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top