مزايا ومساوئ وحدات الماكرو

S

soniya_ahuja

Guest
الاستفسارات في مئويةيمكن لأي شخص أن تخبرني ما هي مزايا وعيوب وحدات الماكرو؟وأود أيضا تكمن في معرفة الفرق الرئيسي بين malloc وcalloc.

في مسألة واحدة --

يمكنك تحديد وظيفة يمكن أن يكون لها المعلمات كمدخلات لأجل غير مسمى؟

شكرا لك
تمنيات
Soniya

 
الجزء الأول ، وحدات الماكرو

1.وحدات الماكرو جعل البرنامج قابل للقراءة
على سبيل المثال : تعريف # صقر (أ) * (أ)

حتى قبل المعالج في كل مرة تحل محل يقول صقر (2) من 2 * 2

لذلك هم ص اسهل في الاستخدام بدلا من الوظائف في بعض الحالات

2.وحدات الماكرو أسرع من وظائف
وحدات الماكرو قد تجعل تجميع أبطأ ولكن تجميع البرامج هي أسرع
لأن وظائف تنطوي على تمرير القيم التي تزيد من استخدام وحدة المعالجة المركزية.

3.لأنها تحقق لنا الاتفاق بروغ
4.تحديد الثوابت التعسفي أمرا سهلا.
على سبيل المثال : --
تعريف # matrix_size 3
الرئيسية ()
(
حصيرة كثافة العمليات [matrix_size] [matrix_size] ؛
/ * اور بقية البرنامج على تجهيز مصفوفة * /
)

وبالتالي في الحالة المذكورة أعلاه matrix_size التعسفي مستمر ويمكن ان تتغير
بدلا من تغيير كل خطوة عملية.
5.ويمكن استخدام وحدات الماكرو لتقصير كثيرا ما تستخدم أوامر أو العمليات.

الجزء الثاني -- malloc () وcalloc ()

malloc () -- يخصص عدد محدد من بايت في الذاكرة.إرجاع مؤشر
إلى بداية كتلة المخصصة

calloc () -- على غرار malloc () ، ولكن initialises البايت المخصصة إلى الصفر.هذا
الوظيفة أيضا يسمح لنا تخصيص الذاكرة لأكثر من كائن واحد
في وقت واحد.

 
العيب :
1.It جعل البرنامج غير قابل للقراءة إذا كنت تستخدم أكثر من اللازم.
2.You ينبغي استخدام الانسي c99 القياسية حول وحدات الماكرو

 

Welcome to EDABoard.com

Sponsor

Back
Top