الانجليزيةالفرنسيةالألمانيّةالإيطاليةالبرتغاليّةالروسيةإسباني

OnWorks فافيكون

mipsel-linux-gnu-cpp-5 - عبر الإنترنت في السحابة

قم بتشغيل mipsel-linux-gnu-cpp-5 في مزود الاستضافة المجانية OnWorks عبر Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

هذا هو الأمر mipsel-linux-gnu-cpp-5 الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

برنامج:

اسم


cpp - المعالج الأولي C

موجز


CPP [-Dالماكرو[=defn] ...] [-Uالماكرو]
[-Iدير...] [-انا اقتبسدير...]
[-Wحذر...]
[-M|-MM] [-مغ] [-مف اسم الملف]
[-MP] [-MQ الهدف...]
[-MT الهدف...]
[-P] [-fno- العمل- الدليل]
[-x لغة] [-std =معيار]
شرير ملف

يتم سرد الخيارات الأكثر فائدة فقط هنا ؛ انظر أدناه للباقي.

وصف


المعالج الأولي C ، والمعروف غالبًا باسم حزب الشعب الكمبودي، هو الماكرو المعالج التي يتم استخدامها تلقائيًا بواسطة
مترجم C لتحويل برنامجك قبل التجميع. يطلق عليه ماكرو
المعالج لأنه يسمح لك بتعريف ملفات وحدات الماكرو، وهي اختصارات موجزة لفترة أطول
يبني.

الغرض من المعالج الأولي C هو استخدامه فقط مع الكود المصدري C و C ++ و Objective-C.
في الماضي ، تم إساءة استخدامه كمعالج نصوص عام. وسوف تختنق على المدخلات التي
لا يطيع القواعد المعجمية للغة سي. على سبيل المثال ، سيتم تفسير الفاصلات العليا على أنها
بداية ثوابت الحرف وتسبب أخطاء. أيضا ، لا يمكنك الاعتماد عليها
الحفاظ على خصائص المدخلات التي ليست مهمة للغات الأسرة سي.
إذا تمت معالجة ملف Makefile مسبقًا ، فستتم إزالة جميع علامات التبويب الثابتة ، وسيقوم Makefile بذلك
لا تعمل.

بعد قولي هذا ، يمكنك غالبًا التخلص من استخدام cpp على أشياء ليست C. أخرى
غالبًا ما تكون لغات البرمجة Algol-ish آمنة (باسكال ، آدا ، إلخ) وكذلك التجميع ، مع
حذر. -التقليدية- CPP يحافظ الوضع على مساحة بيضاء أكبر ، وهو بخلاف ذلك أكثر
متساهل. يمكن تجنب العديد من المشكلات عن طريق كتابة تعليقات بأسلوب C أو C ++
بدلاً من التعليقات باللغة الأم ، والحفاظ على بساطة وحدات الماكرو.

حيثما أمكن ، يجب عليك استخدام معالج أولي موجه للغة التي تكتبها
في. الإصدارات الحديثة من مُجمِّع جنو لديها تسهيلات كلية. أعلى مستوى
لغات البرمجة لها آلية التجميع والإدراج الشرطية الخاصة بها. لو
فشل كل شيء آخر ، جرب معالج نصوص عام حقيقي ، مثل GNU M4.

تختلف معالجات C الأولية في بعض التفاصيل. يناقش هذا الدليل معالج GNU C المسبق ، والذي
يوفر مجموعة شاملة صغيرة من ميزات معيار ISO C. في وضعه الافتراضي ، GNU
لا يقوم معالج C المسبق ببعض الأشياء التي يتطلبها المعيار. هذه هي الميزات
التي نادرًا ما يتم استخدامها ، وقد تتسبب في حدوث تغييرات مفاجئة في معنى a
البرنامج الذي لا يتوقع منهم. للحصول على معيار ISO صارم C ، يجب عليك استخدام امتداد
-std = c90, -std = c99 or -std = c11 الخيارات ، اعتمادًا على إصدار المعيار الذي تستخدمه
يريد. للحصول على جميع التشخيصات الإلزامية ، يجب عليك أيضًا استخدام -متحذلق.

يصف هذا الدليل سلوك معالج ISO. لتقليل لا مبرر له
الاختلافات ، حيث لا يتعارض سلوك معالج ISO مع السلوك التقليدي
علم الدلالة ، يجب أن يتصرف المعالج الأولي التقليدي بنفس الطريقة. المختلف
يتم تفصيل الاختلافات الموجودة في القسم تقليدي نموذج.

من أجل الوضوح ، ما لم يذكر خلاف ذلك ، الإشارات إلى CPP في هذا الدليل راجع GNU CPP.

OPTIONS


يتوقع المعالج المسبق C اسمين للملف كوسيطات ، شرير و ملف.
يقرأ المعالج شرير مع أي ملفات أخرى تحددها معها تتضمن #. جميع
يتم كتابة الإخراج الناتج عن ملفات الإدخال المدمجة ملف.

كل شرير or ملف قد يكون -، والتي مثل شرير يعني أن تقرأ من المدخلات القياسية و
as ملف يعني أن تكتب إلى الإخراج القياسي. أيضًا ، إذا تم حذف أي ملف ، فهذا يعني
نفس الشيء كما لو - تم تحديده لهذا الملف.

ما لم يُذكر خلاف ذلك ، أو ينتهي الخيار بـ =، كل الخيارات التي تأخذ حجة قد
أن تظهر هذه الوسيطة إما مباشرة بعد الخيار ، أو مع وجود مسافة بين
الخيار والحجة: -Ifoo و -I فو لها نفس التأثير.

العديد من الخيارات لها أسماء متعددة الأحرف ؛ لذلك قد خيارات متعددة من حرف واحد ليس be
مجمعة: -dM يختلف كثيرا عن -d -M.

-D الاسم
محدد مسبقا الاسم كماكرو ، مع التعريف 1.

-D الاسم=تعريف
محتويات تعريف يتم ترميزها ومعالجتها كما لو ظهرت أثناء
مرحلة الترجمة الثالثة في أ # تعريف التوجيه. على وجه الخصوص ، سيكون التعريف
تم اقتطاعه بواسطة أحرف سطر جديد مضمنة.

إذا كنت تستدعي المعالج المسبق من قذيفة أو برنامج يشبه القشرة ، فقد تحتاج
لاستخدام صيغة اقتباس الصدفة لحماية الأحرف مثل المسافات التي تحتوي على
المعنى في بناء الجملة.

إذا كنت ترغب في تحديد ماكرو يشبه الوظيفة في سطر الأوامر ، فاكتب وسيطته
قائمة بالأقواس المحيطة قبل علامة التساوي (إن وجدت). الأقواس
مفيد لمعظم الأصداف ، لذلك ستحتاج إلى اقتباس الخيار. مع sh و مستشفى الدعم القتالي,
-د'الاسم(أرجس ...)=تعريف' الأشغال.

-D و -U تتم معالجة الخيارات بالترتيب الوارد في سطر الأوامر. الجميع
-يماكروس ملف و -تضمن ملف يتم معالجة الخيارات بعد كل شيء -D و -U خيارات.

-U الاسم
إلغاء أي تعريف سابق لـ الاسم، سواء مدمجة أو مزودة بامتداد -D الخيار.

- صندوق
لا تقم بإجراء تعريف مسبق لأي وحدات ماكرو خاصة بالنظام أو خاصة بمجلس التعاون الخليجي. المعيار المحدد مسبقًا
تظل وحدات الماكرو معرّفة.

-I دير
أضف الدليل دير إلى قائمة الدلائل التي سيتم البحث فيها عن ملفات الرأس.

الدلائل التي تم تسميتها بواسطة -I يتم البحث قبل تضمين النظام القياسي الدلائل.
إذا كان الدليل دير هو نظام قياسي يشمل الدليل ، يتم تجاهل الخيار إلى
تأكد من أن ترتيب البحث الافتراضي لأدلة النظام والمعالجة الخاصة
لم يتم هزيمة رؤوس النظام. لو دير يبدأ بـ "=" ، ثم "=" سيكون
استبدالها ببادئة sysroot ؛ ارى - الجذور و -ايسروت.

-o ملف
كتابة الإخراج إلى ملف. هذا هو نفس التحديد ملف باعتباره الخيار الثاني
حجة ل حزب الشعب الكمبودي. دول مجلس التعاون الخليجي له تفسير مختلف للحجة الثانية غير الخيار ،
لذلك يجب عليك استخدام -o لتحديد ملف الإخراج.

الجدار شاحن
يقوم بتشغيل جميع التحذيرات الاختيارية المرغوبة للكود العادي. في الوقت الحاضر هذا
is - تعليق, -Wtrigraphs, -مولتيشار وتحذيرًا بشأن ترقية عدد صحيح تسبب أ
تغيير تعبيرات تسجيل الدخول "#if". لاحظ أن العديد من تحذيرات المعالج
بشكل افتراضي وليس لديك خيارات للتحكم فيها.

- تعليق
-ملاحظات
تحذير عند تسلسل بدء تعليق /* يظهر في /* التعليق ، أو كلما أ
يظهر الخط المائل العكسي الجديد في ملف // تعليق. (كلا الشكلين لهما نفس التأثير.)

-Wtrigraphs
لا يمكن أن تؤثر معظم الأشكال الثلاثية في التعليقات على معنى البرنامج. ومع ذلك ، أ
خط الرسم البياني الذي من شأنه أن يشكل سطرًا جديدًا هاربًا (؟؟ / في نهاية السطر) يمكن ، بواسطة
تغيير مكان بدء التعليق أو نهايته. لذلك ، فقط الأشكال الثلاثية التي من شأنها أن تتشكل
تُصدر الأسطر الجديدة التي تم تخطيها تحذيرات داخل تعليق.

هذا الخيار متضمن بواسطة الجدار شاحن. إذا الجدار شاحن لا يزال هذا الخيار ممكّنًا
ما لم يتم تمكين أشكال الرسم البياني. للحصول على تحويل ثلاثي الأبعاد بدون تحذيرات ، ولكن احصل على
الآخر الجدار شاحن تحذيرات ، استخدم -الخط الجدار شاحن -لا-تريغرافس.

-تقليدي
تحذير من بعض التركيبات التي تتصرف بشكل مختلف في المعيار التقليدي و ISO C. أيضًا
تحذير بشأن تركيبات ISO C التي لا تحتوي على مكافئ C تقليدي ، وتشكل مشكلة
التركيبات التي يجب تجنبها.

- وندف
تحذير عند مواجهة معرّف ليس ماكروًا في ملف #إذا التوجيه،
خارج تعريف. يتم استبدال هذه المعرفات بصفر.

-فاخر-وحدات الماكرو
تحذير من وحدات الماكرو المحددة في الملف الرئيسي غير المستخدمة. الماكرو مستعمل اذا كانت
توسعت أو اختبرت من أجل الوجود مرة واحدة على الأقل. سوف يحذر المعالج المسبق أيضًا إذا
لم يتم استخدام الماكرو في وقت إعادة تعريفه أو عدم تحديده.

تضمين وحدات الماكرو المضمنة ووحدات الماكرو المحددة في سطر الأوامر ووحدات الماكرو المحددة في
لا يتم تحذير الملفات منها.

ملاحظة: إذا تم استخدام ماكرو بالفعل ، ولكن تم استخدامه فقط في الكتل الشرطية التي تم تخطيها ، إذن
ستقوم CPP بالإبلاغ عنها على أنها غير مستخدمة. لتجنب التحذير في مثل هذه الحالة ، قد تتحسن
نطاق تعريف الماكرو ، على سبيل المثال ، نقله إلى أول تم تخطيه
منع. بدلاً من ذلك ، يمكنك تقديم استخدام وهمي بشيء مثل:

# إذا حددت the_macro_causing_the_warning
#endif

-وينديف- تسميات
تحذير عندما يكون ملف #else أو #endif تليها نص. يحدث هذا عادة في
كود النموذج

#if FOO
...
# آخر FOO
...
#endif فو

يجب أن يكون "FOO" الثاني والثالث في التعليقات ، لكن غالبًا ما لا يكونا في البرامج القديمة.
يتم تشغيل هذا التحذير بشكل افتراضي.

-خطأ
تحويل جميع التحذيرات إلى أخطاء جسيمة. سيكون كود المصدر الذي يطلق التحذيرات
مرفوض.

-Wsystem- رؤوس
إصدار تحذيرات للتعليمات البرمجية في رؤوس النظام. عادة ما تكون هذه غير مفيدة في العثور عليها
الأخطاء في التعليمات البرمجية الخاصة بك ، وبالتالي قمعها. إذا كنت مسؤولاً عن النظام
مكتبة ، قد ترغب في رؤيتها.

-w قم بإلغاء جميع التحذيرات ، بما في ذلك تلك التي يصدرها GNU CPP افتراضيًا.

-متحذلق
إصدار كافة التشخيصات الإلزامية المدرجة في المعيار C. بقي بعضهم
بشكل افتراضي ، حيث يتم تشغيلها بشكل متكرر على رمز غير ضار.

- أخطاء متداخلة
قم بإصدار جميع التشخيصات الإلزامية ، وجعل جميع التشخيصات الإلزامية في أخطاء.
وهذا يشمل التشخيصات الإلزامية التي تصدر دول مجلس التعاون الخليجي بدونها -متحذلق ولكن يعامل مثل
التحذيرات.

-M بدلاً من إخراج نتيجة المعالجة المسبقة ، أخرج قاعدة مناسبة لـ جعل
يصف تبعيات الملف المصدر الرئيسي. يخرج المعالج المسبق واحد
جعل القاعدة التي تحتوي على اسم ملف الكائن لملف المصدر هذا ، ونقطتان ، والأسماء
لجميع الملفات المضمنة ، بما في ذلك تلك الواردة من -تضمن or -يماكروس أمر-
خيارات الخط.

ما لم يتم تحديد ذلك صراحة (مع -MT or -MQ) ، يتكون اسم ملف الكائن من امتداد
اسم الملف المصدر مع أي لاحقة تم استبدالها بلاحقة ملف الكائن وبأي
إزالة أجزاء الدليل الرائدة. إذا كان هناك العديد من الملفات المضمنة ، فإن القاعدة هي
تنقسم إلى عدة أسطر باستخدام \-خط جديد. القاعدة ليس لها أوامر.

لا يمنع هذا الخيار إخراج تصحيح المعالج ، مثل -dM. لتجنب
خلط إخراج التصحيح هذا مع قواعد التبعية يجب أن تحدد بشكل صريح
ملف الإخراج مع التبعية -مف، أو استخدام متغير بيئة مثل
DEPENDENCIES_OUTPUT. سيظل إخراج التصحيح يتم إرساله إلى دفق الإخراج العادي كـ
العادية.

مرور -M للسائق يعني -E، ويمنع التحذيرات بضمنة -w.

-MM اعجاب -M لكن لا تذكر ملفات الرأس الموجودة في أدلة رؤوس النظام ،
ولا ملفات الرأس التي تم تضمينها ، بشكل مباشر أو غير مباشر ، من هذا الرأس.

هذا يعني أن اختيار الأقواس الزاوية أو علامات الاقتباس المزدوجة في تتضمن #
التوجيه في حد ذاته لا يحدد ما إذا كان هذا الرأس سيظهر في -MM
ناتج التبعية. هذا هو تغيير طفيف في دلالات من الإصدارات الخليجية 3.0 و
سابقا.

-مف ملف
عند استخدامها مع -M or -MM، يحدد ملفًا لكتابة التبعيات إليه. إذا كان الجواب لا -مف
يُعطى التبديل ، يرسل المعالج المسبق القواعد إلى نفس المكان الذي كان من الممكن أن يرسله
الإخراج المجهزة.

عند استخدامها مع خيارات السائق -MD or - MMD, -مف يتجاوز التبعية الافتراضية
ملف إلاخراج.

-مغ بالتزامن مع خيار مثل -M طلب توليد التبعية ، -مغ يفترض
ملفات الرأس المفقودة هي ملفات يتم إنشاؤها وإضافتها إلى قائمة التبعية بدون
رفع خطأ. اسم ملف التبعية مأخوذ مباشرة من "#include"
التوجيه بدون مسبقة أي مسار. -مغ يمنع أيضًا الإخراج المجهز مسبقًا ، مثل ملف
ملف رأس مفقود يجعل هذا عديم الفائدة.

تُستخدم هذه الميزة في التحديث التلقائي لملفات makefiles.

-MP يوجه هذا الخيار CPP إلى إضافة هدف زائف لكل تبعية بخلاف
الملف الرئيسي ، مما يجعل كل منها يعتمد على لا شيء. تعمل هذه القواعد الوهمية على حل الأخطاء
جعل يعطي إذا قمت بإزالة ملفات الرأس دون تحديث ملف ماكيفيلي كثيرا.

هذا هو الناتج النموذجي:

test.o: test.c test.h

test.h:

-MT الهدف
قم بتغيير هدف القاعدة المنبعث من إنشاء التبعية. افتراضيا CPP يأخذ
اسم ملف الإدخال الرئيسي ، يحذف أي مكونات دليل وأي لاحقة ملف
مثل .c، وإلحاق لاحقة الكائن المعتادة للنظام الأساسي. والنتيجة هي الهدف.

An -MT الخيار سيحدد الهدف ليكون بالضبط السلسلة التي تحددها. إن أردت
أهداف متعددة ، يمكنك تحديدها كوسيطة واحدة ل -MT، أو استخدام ملفات متعددة
-MT خيارات.

على سبيل المثال، -MT "$ (objpfx) foo.o" ممكن يعطي

$ (objpfx) foo.o: foo.c

-MQ الهدف
مثل -MT، ولكنه يقتبس أي أحرف خاصة لعملها.
-MQ "$ (objpfx) foo.o" يعطي

$$ (objpfx) foo.o: foo.c

يتم اقتباس الهدف الافتراضي تلقائيًا ، كما لو تم إعطاؤه مع -MQ.

-MD -MD ما يعادل -M -مف ملف، ما عدا ذلك -E ليس ضمنيا. السائق
يحدد ملف بناءً على ما إذا كان ملف -o يتم إعطاء الخيار. إذا كان الأمر كذلك ، يستخدم السائق ملف
حجة ولكن مع لاحقة .dوإلا فإنه يأخذ اسم ملف الإدخال ،
يزيل أي مكونات الدليل واللاحقة ، ويطبق أ .d لاحقة.

If -MD يستخدم بالتزامن مع -Eاي -o من المفهوم أن التبديل لتحديد
ملف الإخراج التبعية ، ولكن إذا تم استخدامه بدون -E، كل -o من المفهوم أن تحدد أ
الهدف ملف.

منذ -E ليس ضمنيا ، -MD يمكن استخدامها لإنشاء ملف مخرجات التبعية كملف
الآثار الجانبية لعملية التجميع.

- MMD
اعجاب -MD باستثناء ذكر ملفات رأس المستخدم فقط ، وليس ملفات رأس النظام.

-x c
-x ج ++
-x ج موضوعية
-x المجمع مع cpp
حدد لغة المصدر: C أو C ++ أو Objective-C أو التجميع. هذا لا علاقة له به
بمطابقة المعايير أو الامتدادات ؛ إنه يختار فقط بناء الجملة الأساسي
توقع. إذا لم تقدم أيًا من هذه الخيارات ، فسوف يستنتج cpp اللغة من
امتداد الملف المصدر: .c, . سم مكعب, .m، أو .S. بعض الامتدادات الشائعة الأخرى لـ
يتم التعرف أيضًا على C ++ والتجميع. إذا لم يتعرف cpp على الامتداد ، فسيتم
سيعامل الملف على أنه C ؛ هذا هو الوضع الأكثر عمومية.

ملاحظة: الإصدارات السابقة من cpp قبلت ملف -لانغ الخيار الذي حدد كلا من
اللغة ومستوى توافق المعايير. تم حذف هذا الخيار لأن
يتعارض مع -l الخيار.

-std =معيار
-انسى
حدد المعيار الذي يجب أن يتوافق معه الرمز. يعرف CPP حاليًا عن C
ومعايير C ++ ؛ يمكن إضافة الآخرين في المستقبل.

معيار قد يكون أحد:

"c90"
"c89"
"iso9899: 1990"
معيار ISO C من عام 1990. c90 هو الاختصار المعتاد لهذا الإصدار من
المعيار.

أفضل -انسى الخيار يعادل -std = c90.

"iso9899: 199409"
معيار 1990 C ، بصيغته المعدلة في 1994.

"iso9899: 1999"
"c99"
"iso9899: 199x"
"c9x"
معيار ISO C المنقح ، المنشور في ديسمبر 1999. قبل النشر ، هذا
كان يعرف باسم C9X.

"iso9899: 2011"
"c11"
"c1x"
معيار ISO C المنقح ، المنشور في ديسمبر 2011. قبل النشر ، هذا
كان يعرف باسم C1X.

"gnu90"
"gnu89"
معيار C لعام 1990 بالإضافة إلى امتدادات GNU. هذا هو الافتراضي.

"gnu99"
"gnu9x"
معيار 1999 C بالإضافة إلى امتدادات GNU.

"gnu11"
"gnu1x"
معيار 2011 C بالإضافة إلى امتدادات GNU.

"c ++ 98"
معيار ISO C ++ لعام 1998 بالإضافة إلى التعديلات.

"gnu ++ 98"
كمثل -std = c ++ 98 بالإضافة إلى امتدادات جنو. هذا هو الإعداد الافتراضي لرمز C ++.

-أنا- تقسيم مسار التضمين. أي أدلة محددة مع -I خيارات من قبل -أنا- هي
تم البحث فقط عن الرؤوس المطلوبة بـ "#include"ملف""؛ لم يتم البحث عنها
"#يشململف> ". إذا تم تحديد أدلة إضافية مع -I خيارات بعد
-أنا-، يتم البحث عن تلك الدلائل للجميع تتضمن # توجيهات.

بالإضافة إلى ذلك، -أنا- يمنع استخدام دليل دليل الملف الحالي كملف
دليل البحث الأول عن "#include"ملف"".

تم إهمال هذا الخيار.

-نوستدينك
لا تبحث في دلائل النظام القياسية عن ملفات الرأس. الدلائل فقط
التي حددتها مع -I الخيارات (ودليل الملف الحالي ، إذا كان
المناسب).

-نوستدينك ++
لا تبحث عن ملفات الرأس في الدلائل المعيارية الخاصة بـ C ++ ، ولكن لا تزال تفعل ذلك
البحث في الدلائل القياسية الأخرى. (يُستخدم هذا الخيار عند إنشاء C ++
مكتبة.)

-تضمن ملف
المعالجة: ملف كما لو أن "#include" file "" ظهر على أنه السطر الأول من المصدر الأساسي
ملف. ومع ذلك ، تم البحث عن الدليل الأول ملف هو عمل المعالج
دليل بدلًا من ذلك of الدليل الذي يحتوي على ملف المصدر الرئيسي. إذا لم يتم العثور عليها
هناك ، يتم البحث عنه في باقي سلسلة البحث "# include" ... "" كـ
العادية.

إذا كانت متعددة -تضمن الخيارات معطاة ، يتم تضمين الملفات بالترتيب
تظهر في سطر الأوامر.

-يماكروس ملف
بالضبط مثل -تضمن، باستثناء أن أي ناتج ينتج عن المسح ملف هذا خطئ
بعيدا. تظل وحدات الماكرو التي تحددها محددة. هذا يسمح لك بالحصول على كافة وحدات الماكرو
من رأس بدون معالجة إعلاناتها أيضًا.

جميع الملفات المحددة بواسطة -يماكروس تتم معالجة قبل كافة الملفات المحددة بواسطة -تضمن.

- بعد دير
بحث دير لملفات الرأس ، ولكن قم بذلك بعد كل الدلائل المحددة مع -I و
تم استنفاد دلائل النظام القياسية. دير يتم التعامل معها كنظام تشمل
الدليل. لو دير يبدأ بـ "=" ، ثم سيتم استبدال "=" بـ sysroot
اختصار؛ ارى - الجذور و -ايسروت.

-iprefix بادئة
تحديد بادئة كبادئة لما يلي -iwithprefix والخيارات. إذا كانت البادئة
يمثل دليلاً ، يجب عليك تضمين الملف النهائي /.

-iwithprefix دير
-iwithprefix قبل ذلك دير
ألحق دير إلى البادئة المحددة مسبقًا بـ -iprefix، وأضف الناتج
دليل لتضمين مسار البحث. -iwithprefix قبل ذلك يضعها في نفس المكان -I
سيكون؛ -iwithprefix يضعها حيث - بعد سيكون.

-ايسروت دير
هذا الخيار مثل - الجذور الخيار ، ولكنه ينطبق فقط على ملفات الرأس (باستثناء ملفات
أهداف داروين ، حيث تنطبق على كل من ملفات الرأس والمكتبات). انظر
- الجذور خيار لمزيد من المعلومات.

-متعدد دير
استعمل دير كدليل فرعي للدليل الذي يحتوي على رؤوس C ++ الخاصة بالهدف.

-نظام دير
بحث دير لملفات الرأس ، بعد كل الدلائل المحددة بواسطة -I ولكن قبل
دلائل النظام القياسية. قم بتمييزه كدليل نظام ، بحيث يحصل على نفس الشيء
معاملة خاصة كما يتم تطبيقها على أدلة النظام القياسية.

If دير يبدأ بـ "=" ، ثم يتم استبدال "=" ببادئة sysroot ؛ ارى
- الجذور و -ايسروت.

-انا اقتبس دير
بحث دير فقط لملفات الرأس المطلوبة مع "#include"ملف""؛ هم ليسوا
بحثت عن "# includeملف> "، قبل كافة الدلائل المحددة بواسطة -I وقبل
دلائل النظام القياسية.

If دير يبدأ بـ "=" ، ثم يتم استبدال "=" ببادئة sysroot ؛ ارى
- الجذور و -ايسروت.

- التوجيهات فقط
عند المعالجة المسبقة ، تعامل مع التوجيهات ، لكن لا تقم بتوسيع وحدات الماكرو.

يعتمد سلوك الخيار على -E و -مجهزة خيارات.

مع -E، المعالجة المسبقة تقتصر على التعامل مع التوجيهات مثل "#define" ،
"#ifdef" و "# Error". عمليات المعالجة الأولية الأخرى ، مثل توسيع الماكرو و
لا يتم تنفيذ تحويل الرسم البياني. بالإضافة إلى ذلك ، فإن الخيار ضمنيًا
تمكين.

مع -مجهزة، التحديد المسبق لسطر الأوامر ومعظم وحدات الماكرو المضمنة هو
معاق. يتم التعامل مع وحدات الماكرو مثل "__LINE__" ، والتي تعتمد على السياق
بشكل طبيعي. يتيح ذلك تجميع الملفات التي سبق معالجتها بـ "-E
-fdirectives-only ".

مع كلاهما -E و -مجهزة، قواعد ل -مجهزة حق الاولويه او حق التقدم. هذه
يتيح المعالجة المسبقة الكاملة للملفات التي سبق معالجتها بـ "-E
-fdirectives-only ".

-fdollars- في-المعرفات
قبول $ في المعرفات.

- المعرفات الموسعة
قبول أسماء الأحرف العالمية في المعرفات. يتم تمكين هذا الخيار افتراضيًا
لـ C99 (والإصدارات اللاحقة C القياسية) و C ++.

-رؤوس-نظام-متعارف عليه-
عند المعالجة المسبقة ، لا تقصر مسارات رأس النظام باستخدام تحديد العنوان المتعارف عليه.

-مجهزة
وضح للمعالج أن ملف الإدخال قد تمت معالجته مسبقًا. هذه
يمنع أشياء مثل توسيع الماكرو ، وتحويل المثلثات ، وهروب السطر الجديد ،
وتجهيز معظم التوجيهات. المعالج لا يزال يتعرف ويزيل
من التعليقات ، بحيث يمكنك تمرير ملف تمت معالجته مسبقًا -C إلى المترجم بدون
مشاكل. في هذا الوضع ، يكون المعالج الأولي المدمج أكثر بقليل من رمز مميز
للأطراف الأمامية.

-مجهزة ضمنيًا إذا كان ملف الإدخال يحتوي على أحد الامتدادات .i, .ii or .mi.
هذه هي الامتدادات التي يستخدمها GCC للملفات المعالجة مسبقًا التي تم إنشاؤها بواسطة حفظ مؤقت.

-ftabstop =عرض
اضبط المسافة بين علامات الجدولة. هذا يساعد تقرير المعالج المسبق العمود الصحيح
الأرقام في التحذيرات أو الأخطاء ، حتى إذا ظهرت علامات التبويب على السطر. إذا كانت القيمة أقل
من 1 أو أكبر من 100 ، يتم تجاهل الخيار. الافتراضي هو 8.

-fdebug-cpp
هذا الخيار مفيد فقط لتصحيح أخطاء GCC. عند استخدامها مع -E، مقالب التصحيح
معلومات حول خرائط الموقع. يسبق كل رمز مميز في الإخراج تفريغ
الخريطة التي ينتمي إليها موقعها. تفريغ الخريطة التي تحتوي على موقع الرمز المميز
سيكون:

{"P": F ؛ "F": F ؛ "L": ؛ "ج": ؛"س": ؛ "م": ؛ "ه": ، "loc": }

عند استخدامها بدون -E، هذا الخيار ليس له أي تأثير.

التوسع الكلي[=مستوى]
تتبع مواقع الرموز المميزة عبر التوسعات الكلية. هذا يسمح للمترجم بالبث
التشخيص حول مكدس توسيع الماكرو الحالي عند حدوث خطأ تجميع في
توسع ماكرو. استخدام هذا الخيار يجعل المعالج والمجمع يستهلكان
المزيد من الذاكرة. ال مستوى يمكن استخدام المعلمة لاختيار مستوى دقة الرمز المميز
تتبع الموقع وبالتالي تقليل استهلاك الذاكرة إذا لزم الأمر. قيمة 0 of
مستوى يقوم بإلغاء تنشيط هذا الخيار تمامًا كما لو كان لا التوسع الكلي كان حاضرًا في
سطر الأوامر. قيمة 1 يتتبع مواقع الرموز المميزة في الوضع المتدهور من أجل
الحد الأدنى من سعة الذاكرة. في هذا الوضع ، تكون جميع الرموز المميزة الناتجة عن توسيع ملف
حجة الماكرو الشبيه بالوظيفة لها نفس الموقع. قيمة 2 المسارات المميزة
مواقع بالكامل. هذه القيمة هي الذاكرة الأكثر جوعًا. عندما يتم إعطاء هذا الخيار
لا توجد وسيطة ، قيمة المعلمة الافتراضية هي 2.

لاحظ أنه يتم تنشيط "-ftrack-macro-extension = 2" افتراضيًا.

-fexec-charset =محارف
قم بتعيين مجموعة أحرف التنفيذ ، المستخدمة في ثوابت السلسلة والحرف. الافتراضي
هو UTF-8. محارف يمكن أن يكون أي ترميز تدعمه مكتبة "iconv" للنظام
نمط.

-fwide-exec-charset =محارف
عيّن مجموعة أحرف التنفيذ العريضة ، والمستخدمة لسلسلة واسعة وثوابت الأحرف.
الافتراضي هو UTF-32 أو UTF-16 ، أيهما يتوافق مع عرض "wchar_t". كما
مع -fexec-charset, محارف يمكن أن يكون أي ترميز يدعمه رمز "iconv" الخاص بالنظام
روتين المكتبة ومع ذلك ، ستواجه مشاكل مع الترميزات غير الملائمة
بالضبط في "wchar_t".

- إدخال - محارف =محارف
قم بتعيين مجموعة أحرف الإدخال ، المستخدمة للترجمة من مجموعة أحرف الإدخال
ملف إلى مجموعة الأحرف المصدر المستخدمة من قبل GCC. إذا لم تحدد الإعدادات المحلية ، أو GCC
لا يمكن الحصول على هذه المعلومات من الإعدادات المحلية ، الافتراضي هو UTF-8. هذا يمكن أن يكون
تم تجاوزه بواسطة الإعدادات المحلية أو خيار سطر الأوامر هذا. حاليا الأمر-
يكون لخيار الخط الأسبقية إذا كان هناك تعارض. محارف يمكن أن يكون أي ترميز
بدعم من روتين مكتبة النظام "iconv".

-العمل-الدليل
قم بتمكين إنشاء علامات خطية في إخراج المعالج المسبق التي ستسمح للمترجم
تعرف على دليل العمل الحالي في وقت المعالجة المسبقة. عندما يكون هذا الخيار
ممكّنًا ، سيصدر المعالج ، بعد علامة الخط الأولي ، علامة خطية ثانية
مع دليل العمل الحالي متبوعًا بشرطتين مائلتين. سيستخدم دول مجلس التعاون الخليجي هذا
الدليل ، عندما يكون موجودًا في المدخلات المعالجة مسبقًا ، حيث ينبعث الدليل بتنسيق
دليل العمل الحالي في بعض تنسيقات معلومات التصحيح. هذا الخيار هو
ممكّنًا ضمنيًا إذا تم تمكين معلومات تصحيح الأخطاء ، ولكن يمكن منع ذلك باستخدام
الشكل المنفي -fno- العمل- الدليل. إذا كان -P العلم موجود في الأمر
سطر ، هذا الخيار ليس له أي تأثير ، حيث لا يتم إصدار أي توجيهات "# line" على الإطلاق.

-fno-show-العمود
لا تطبع أرقام الأعمدة في التشخيص. قد يكون هذا ضروريًا إذا كانت التشخيصات
يتم فحصها بواسطة برنامج لا يفهم أرقام الأعمدة ، مثل
ديجانو.

-A فاعل=إجابة
قم بعمل تأكيد مع المسند فاعل والجواب إجابة. هذا النموذج
يفضل الشكل الأقدم -A فاعل(إجابة)، والذي لا يزال مدعومًا ، لأنه
لا يستخدم رموز شل الخاصة.

-A -فاعل=إجابة
إلغاء تأكيد مع المسند فاعل والجواب إجابة.

-دكار
الرسوم هي سلسلة من واحد أو أكثر من الأحرف التالية ، ويجب ألا تكون كذلك
مسبوقة بمسافة. يتم تفسير الأحرف الأخرى من قبل المترجم الصحيح ، أو
محفوظة للإصدارات المستقبلية من GCC ، وبالتالي يتم تجاهلها بصمت. إذا حددت
الشخصيات التي يتعارض سلوكها ، والنتيجة غير محددة.

M بدلاً من الإخراج العادي ، قم بإنشاء قائمة بـ # تعريف توجيهات لجميع
وحدات الماكرو المحددة أثناء تنفيذ المعالج المسبق ، بما في ذلك المحدد مسبقًا
وحدات الماكرو. يمنحك هذا طريقة لمعرفة ما تم تحديده مسبقًا في نسختك من
المعالج. بافتراض عدم وجود ملف لديك foo.h، الامر

لمس foo.h ؛ cpp -dM foo.h

سيعرض كافة وحدات الماكرو المحددة مسبقًا.

إذا كنت تستخدم -dM بدون ال -E اختيار، -dM يتم تفسيره على أنه مرادف لـ
-fdump- rtl- ماخ.

D اعجاب M إلا من ناحيتين: إنه كذلك ليس تضمين وحدات الماكرو المحددة مسبقًا ، و
النتائج على حد سواء ال # تعريف التوجيهات ونتيجة المعالجة المسبقة. كلا النوعين
من الإخراج انتقل إلى ملف الإخراج القياسي.

N اعجاب D، ولكن ينبعث منها أسماء الماكرو فقط ، وليس توسعاتها.

I الناتج تتضمن # التوجيهات بالإضافة إلى نتيجة المعالجة المسبقة.

U اعجاب D فيما عدا ذلك فقط وحدات الماكرو الموسعة أو التي يتم اختبار تعريفها
في توجيهات المعالج ، هي الإخراج ؛ الإخراج يتأخر حتى استخدام أو
اختبار الماكرو و # صندوق يتم أيضًا إخراج التوجيهات لوحدات الماكرو التي تم اختبارها ولكن
غير محدد في ذلك الوقت.

-P منع إنشاء علامات خطية في الإخراج من المعالج المسبق. هذا قد يكون
مفيد عند تشغيل المعالج على شيء ليس رمز C ، وسيتم إرساله
إلى برنامج قد يتم الخلط بينه وبين محددات الخطوط.

-C لا تتجاهل التعليقات. يتم تمرير جميع التعليقات إلى ملف الإخراج ، باستثناء
للتعليقات في التعليمات التي تمت معالجتها ، والتي يتم حذفها مع التوجيه.

يجب أن تكون مستعدًا للآثار الجانبية عند الاستخدام -C؛ يؤدي إلى المعالج المسبق
التعامل مع التعليقات كرموز في حد ذاتها. على سبيل المثال ، التعليقات التي تظهر في
بداية ما يمكن أن يكون سطرًا توجيهيًا لها تأثير تحويل هذا الخط إلى ملف
خط المصدر العادي ، لأن الرمز المميز الأول على السطر لم يعد ملف #.

-نسخة لا تتجاهل التعليقات ، بما في ذلك أثناء توسيع الماكرو. هذا مثل -C، إلا
يتم أيضًا تمرير تلك التعليقات المضمنة في وحدات الماكرو إلى ملف الإخراج حيث
يتم توسيع الماكرو.

بالإضافة إلى الآثار الجانبية لل -C الخيار ، و -نسخة الخيار يسبب كل نمط C ++
التعليقات داخل ماكرو ليتم تحويلها إلى تعليقات على النمط C. هذا لمنع في وقت لاحق
استخدام هذا الماكرو من التعليق بدون قصد على باقي سطر المصدر.

أفضل -نسخة يستخدم الخيار بشكل عام لدعم تعليقات الوبر.

-التقليدية- CPP
حاول تقليد سلوك معالجات C القديمة ، على عكس ISO C
المعالجات.

-الخط
تسلسل الرسم البياني.

-Remap
قم بتمكين رمز خاص للتغلب على أنظمة الملفات التي تسمح فقط بالملفات القصيرة جدًا
أسماء ، مثل MS-DOS.

--مساعدة
--تهدف المساعدة
اطبع نصًا يصف جميع خيارات سطر الأوامر بدلاً من المعالجة المسبقة لأي شيء.

-v وضع مفصل. اطبع رقم إصدار GNU CPP في بداية التنفيذ ، و
تقرير الشكل النهائي لمسار التضمين.

-H اطبع اسم كل ملف رأس مستخدم ، بالإضافة إلى الأنشطة العادية الأخرى. كل
تم وضع مسافة بادئة للاسم لإظهار مدى عمق تتضمن # كومة هو عليه. رأس مترجمة مسبقًا
تتم أيضًا طباعة الملفات ، حتى لو تبين أنها غير صالحة ؛ مترجم غير صالح
تتم طباعة ملف الرأس باستخدام ... x وواحد صالح به ...! .

-الإصدار
--الإصدار
اطبع رقم إصدار GNU CPP. بشرطة واحدة ، انتقل إلى المعالجة المسبقة كالمعتاد.
بشرطتين ، اخرج فورًا.

البيئة


يصف هذا القسم متغيرات البيئة التي تؤثر على كيفية عمل CPP. تستطيع
استخدمها لتحديد الدلائل أو البادئات لاستخدامها عند البحث عن تضمين الملفات ، أو إلى
السيطرة الناتج التبعية.

لاحظ أنه يمكنك أيضًا تحديد أماكن للبحث باستخدام خيارات مثل -I، والسيطرة
مخرجات التبعية مع خيارات مثل -M. هذه لها الأسبقية على متغيرات البيئة ،
والتي بدورها لها الأسبقية على تكوين دول مجلس التعاون الخليجي.

CPATH
C_INCLUDE_PATH
CPLUS_INCLUDE_PATH
OBJC_INCLUDE_PATH
قيمة كل متغير هي قائمة من الدلائل مفصولة بحرف خاص ، إلى حد كبير
مثل PATH، حيث يتم البحث عن ملفات الرأس. الشخصية الخاصة ،
يعتمد "PATH_SEPARATOR" على الهدف ويتم تحديده في وقت إنشاء دول مجلس التعاون الخليجي. لمايكروسوفت
تعتبر الأهداف المستندة إلى Windows فاصلة منقوطة ، وبالنسبة لجميع الأهداف الأخرى تقريبًا ، فهي عبارة عن ملف
القولون.

CPATH يحدد قائمة الدلائل التي سيتم البحث عنها كما لو تم تحديدها مع -I، لكن
بعد أي مسارات معطاة -I خيارات في سطر الأوامر. هذا متغير البيئة
يتم استخدامه بغض النظر عن اللغة التي يتم معالجتها مسبقًا.

تنطبق متغيرات البيئة المتبقية فقط عند المعالجة المسبقة للمتغيرات الخاصة
اللغة المشار إليها. يحدد كل قائمة من الدلائل التي سيتم البحث عنها كما لو
المحدد بـ -نظام، ولكن بعد أي مسارات معطاة -نظام خيارات على
سطر الأوامر.

في كل هذه المتغيرات ، يوجه العنصر الفارغ المترجم للبحث عن تياره الحالي
عمل اخراجي. يمكن أن تظهر العناصر الفارغة في بداية المسار أو نهايته. ل
على سبيل المثال ، إذا كانت قيمة CPATH هو ": / special / include" ، له نفس تأثير
من أنا. -أنا / خاص / تشمل.

DEPENDENCIES_OUTPUT
إذا تم تعيين هذا المتغير ، فإن قيمته تحدد كيفية إخراج التبعيات لـ Make Based
على ملفات الرأس غير الخاصة بالنظام التي تتم معالجتها بواسطة المترجم. ملفات رأس النظام هي
تجاهله في إخراج التبعية.

قيمة DEPENDENCIES_OUTPUT يمكن أن يكون مجرد اسم ملف ، وفي هذه الحالة يكون إنشاء القواعد
مكتوبة على هذا الملف ، تخمين اسم الهدف من اسم الملف المصدر. أو ال
يمكن أن يكون الشكل ملف الهدف، وفي هذه الحالة تتم كتابة القواعد في ملف ملف
استخدام الهدف كاسم الهدف.

بمعنى آخر ، متغير البيئة هذا يعادل دمج الخيارات -MM
و -مف، مع خيار -MT التبديل أيضا.

SUNPRO_DEPENDENCIES
هذا المتغير هو نفسه DEPENDENCIES_OUTPUT (انظر أعلاه) ، باستثناء ذلك النظام
لا يتم تجاهل ملفات الرأس ، لذلك يعني ذلك ضمناً -M بدلا من -MM. ومع ذلك، فإن
تم حذف الاعتماد على ملف الإدخال الرئيسي.

استخدم mipsel-linux-gnu-cpp-5 عبر الإنترنت باستخدام خدمات onworks.net


Ad


Ad

أحدث برامج Linux و Windows عبر الإنترنت