این دستور cproto است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
cproto - نمونه های اولیه تابع C را تولید کرده و تعاریف تابع را تبدیل می کند
خلاصه
cproto [ انتخاب ... ] [ پرونده ...]
شرح
Cproto نمونه های اولیه تابع را برای توابع تعریف شده در فایل های منبع C مشخص شده تولید می کند
به خروجی استاندارد تعاریف تابع ممکن است به سبک قدیمی یا سبک ANSI C باشد.
در صورت تمایل ، cproto همچنین اعلان هایی را برای متغیرهای تعریف شده در فایل ها خروجی می دهد. اگر نه
پرونده استدلال داده شده است، cproto ورودی خود را از ورودی استاندارد می خواند.
با دادن گزینه خط فرمان، cproto همچنین تعاریف تابع را در
فایل های مشخص شده از سبک قدیمی تا سبک ANSI C. فایل های منبع اصلی به همراه
با فایل های مشخص شده توسط
#include "پرونده"
دستورالعمل هایی که در کد منبع ظاهر می شوند با کد تبدیل شده بازنویسی می شوند. اگر
هیچ نام فایلی در خط فرمان داده نمی شود، سپس برنامه کد منبع را از آن می خواند
ورودی استاندارد و خروجی منبع تبدیل شده به خروجی استاندارد.
اگر هر نظری در اعلانات پارامتر برای تعریف تابع ظاهر شود، مانند in
مثال،
اصلی (argc، argv)
int argc; /* تعداد آرگومان ها */
char *argv[]; /* آرگومان ها */
{
}
سپس تعریف تابع تبدیل شده فرم خواهد داشت
INT
اصلی (
int argc، /* تعداد آرگومان ها */
char *argv[] /* آرگومان ها */
)
{
}
در غیر این صورت، تعریف تابع تبدیل شده مانند خواهد بود
INT
اصلی (int argc، char *argv[])
{
}
Cproto می تواند به صورت اختیاری تعاریف تابع را از سبک ANSI به سبک قدیمی تبدیل کند.
در این حالت، برنامه اعلام کننده های تابع و نمونه های اولیه ظاهر شده را نیز تبدیل می کند
اجسام عملکرد بیرونی این یک تبدیل کامل ANSI C به C قدیمی نیست. برنامه
هیچ چیزی را در بدن های عملکردی تغییر نمی دهد.
Cproto می تواند به صورت اختیاری منبع را در قالب lint-library تولید کند. این مفید است در
محیط هایی که در آن خط ابزار برای تکمیل بررسی نمونه اولیه شما استفاده می شود
برنامه است.
OPTIONS
-e خروجی کلمه کلیدی بیرونی در مقابل هر نمونه اولیه یا اعلان تولید شده که
دامنه جهانی دارد.
-f n سبک نمونه های اولیه تابع تولید شده را در آن تنظیم کنید n عددی از 0 تا 3 است.
به عنوان مثال، تعریف تابع را در نظر بگیرید
اصلی (argc، argv)
int argc;
char *argv[];
{
}
اگر مقدار 0 باشد، هیچ نمونه اولیه تولید نمی شود. وقتی روی 1 تنظیم شود، خروجی به صورت زیر است:
int main(/*int argc، char *argv[]*/);
برای مقدار 2، خروجی به شکل زیر است:
int main(int /*argc*/، char */*argv*/[]);
مقدار پیش فرض 3 است. نمونه اولیه تابع کامل را تولید می کند:
int main(int argc، char *argv[]);
-l ایجاد متن برای کتابخانه lint (باعملکرد "-f"گزینه). خروجی شامل
نظر
/* LINTLIBRARY */
نظرات ویژه LINT_EXTERN و LINT_PREPRO (a la "VARARGS") به ترتیب روشن می شوند
گزینه "-x" و کپی متن نظر در خروجی (برای پیش پردازش در خط).
از نظر استفاده کنید
/* LINT_EXTERN2 */
برای گنجاندن اکسترن های تعریف شده در سطح اول شامل-فایل ها. از نظر استفاده کنید
/* LINT_SHADOWED */
برای ایجاد cproto برای قرار دادن دستورالعمل های "#undef" قبل از هر اعلامیه کتابخانه lint
(یعنی برای جلوگیری از درگیری با ماکروهایی که اتفاقاً باید همنام با آن باشند
توابع، در نتیجه باعث خطاهای نحوی می شود).
توجه داشته باشید که این نظرات ویژه تحت VAX/VMS پشتیبانی نمی شوند، زیرا وجود ندارد
معادل گزینه "-C" از cpp با VAX-C.
-c کامنت های پارامتر در نمونه های اولیه تولید شده توسط گزینه های -f1 و -f2 هستند
به طور پیش فرض حذف شده است. از این گزینه برای فعال کردن خروجی این نظرات استفاده کنید.
-m یک ماکرو در اطراف لیست پارامترهای هر نمونه اولیه تولید شده قرار دهید. مثلا:
int main P_((int argc، char *argv[]));
-M نام
نام ماکرو مورد استفاده برای احاطه لیست پارامترهای نمونه اولیه را در صورت گزینه -m تنظیم کنید
انتخاب شده است. پیش فرض "P_" است.
-d تعریف ماکرو نمونه اولیه مورد استفاده توسط گزینه -m را حذف کنید.
-o پرونده
نام فایل خروجی را مشخص کنید (پیشفرض: خروجی استاندارد).
-O پرونده
نام فایل خطا را مشخص کنید (پیشفرض: خطای استاندارد).
-p غیرفعال کردن ارتقای پارامترهای رسمی در تعاریف تابع سبک قدیمی. توسط
پیش فرض، پارامترهای نوع ارابه or کوتاه در سبک قدیمی تعاریف تابع هستند
ارتقاء به نوع INT در نمونه اولیه تابع یا تابع ANSI C تبدیل شده است
تعریف. پارامترهای نوع شناور ارتقاء یافتن به دو برابر نیز هست.
-q هنگامی که برنامه قادر به خواندن فایل مشخص شده در آن نیست، هیچ پیام خطایی را خروجی ندهید
an #include بخشنامه.
-s به طور پیش فرض، cproto فقط برای توابع و متغیرهایی که دارند اعلان تولید می کند
گستره جهانی این گزینه خروجی خواهد داشت ایستا اعلامیه ها نیز
-S خروجی فقط اعلان های استاتیک.
-i به طور پیش فرض، cproto فقط برای توابع و متغیرهایی که دارند اعلان تولید می کند
گستره جهانی این گزینه خروجی خواهد داشت خطی اعلامیه ها نیز
-T تعاریف نوع را از هر فایل کپی کنید. (تعاریف موجود در فایل های موجود کپی شده است،
برخلاف گزینه "-l").
-v همچنین اعلان های خروجی برای متغیرهای تعریف شده در منبع.
-x این گزینه باعث می شود که رویه ها و متغیرهایی که "خارجی" اعلام می شوند، باشند
در خروجی گنجانده شده است.
-X سطح
این گزینه سطح فایل شامل که از آن اعلان ها استخراج می شوند را محدود می کند
بررسی خروجی پیش پردازنده
-a تعاریف تابع را از سبک قدیمی به سبک ANSI C تبدیل کنید.
-t تعاریف تابع را از سبک ANSI C به سبک سنتی تبدیل کنید.
-b سرهای تعریف تابع را بازنویسی کنید تا هم سبک قدیمی و هم سبک جدید را شامل شود
اعلامیه هایی که توسط یک دستورالعمل جمع آوری مشروط جدا شده اند. به عنوان مثال
برنامه می تواند این تعریف تابع را ایجاد کند:
#ifdef ANSI_FUNC
INT
اصلی (int argc، char *argv[])
# دیگر
INT
اصلی (argc، argv)
int argc;
char *argv[]
# اندیف
{
}
-B رهنمود
دستور کامپایل شرطی را روی خروجی در ابتدای تابع تنظیم کنید
تعاریف ایجاد شده توسط گزینه -b. پیش فرض است
#ifdef ANSI_FUNC
-P قالب
-F قالب
-C قالب
قالب خروجی را برای نمونه های اولیه تولید شده، تعاریف عملکرد و عملکرد تنظیم کنید
تعاریف به ترتیب با نظرات پارامتر. فرمت توسط a مشخص شده است
قالب در فرم
"int f (a, b)"
اما می توانید هر فاصله در این رشته را با هر تعداد فضای خالی جایگزین کنید
شخصیت ها. به عنوان مثال، گزینه
-F"int f(\n\ta,\n\tb\n\t)"
تولید خواهد کرد
int main(
int argc ،
char *argv[]
)
-D نام[=ارزش]
این گزینه به پیش پردازنده منتقل می شود و برای تعریف نمادها استفاده می شود
استفاده با شرط هایی مانند #ifdef.
-U نام
این گزینه به پیش پردازنده منتقل می شود و برای حذف هر کدام استفاده می شود
تعاریف این نماد
-I فهرست راهنما
این گزینه به پیش پردازنده منتقل می شود و برای تعیین a استفاده می شود
دایرکتوری برای جستجوی فایل هایی که به آنها ارجاع داده شده است #عبارتند از.
-E cpp فایل های ورودی را هنگام تولید از طریق دستور پیش پردازنده مشخص شده C لوله کنید
نمونه های اولیه به طور پیش فرض، برنامه از /lib/cpp استفاده می کند.
-E 0 پیش پردازنده C را اجرا نکنید.
-V اطلاعات نسخه چاپی
محیط زیست
متغیر محیطی CPROTO برای فهرستی از گزینهها در همان قالب اسکن میشود
گزینه های خط فرمان گزینه های داده شده در خط فرمان، هر مورد مربوطه را لغو می کند
گزینه محیطی
با استفاده از خدمات onworks.net از cproto آنلاین استفاده کنید