این اسپلینت فرمانی است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
splint - ابزاری برای بررسی استاتیکی برنامه های C
خلاصه
آتل [گزینه ها]
شرح
آتل ابزاری برای بررسی استاتیک برنامه های C از نظر آسیب پذیری های امنیتی و
اشتباهات رایج برنامه نویسی با کمترین تلاش می توان از اسپلینت به عنوان پرز بهتری استفاده کرد. اگر
تلاش بیشتری برای اضافه کردن حاشیه نویسی به برنامه ها انجام می شود، اسپلینت می تواند قوی تر عمل کند
بررسی می کند که می تواند توسط هر پرز استاندارد انجام شود. برای مستندات کامل، اسپلینت را نصب کنید
بسته دبیان doc-html. این صفحه مرد تنها تعدادی از گزینه های موجود را پوشش می دهد.
OPTIONS
-کمک کمک نشان می دهد
دهی اولیه
این پرچم ها دایرکتوری ها و فایل های استفاده شده توسط splint را کنترل می کنند. ممکن است از آنها استفاده شود
خط فرمان یا در یک فایل گزینه، اما ممکن است به عنوان نظرات کنترلی در منبع استفاده نشود
کد به جز جایی که ذکر شده است. آنها به همان معنی قبل از - یا + هستند.
-tmpdir فهرست راهنما
دایرکتوری را برای نوشتن فایل های موقت تنظیم کنید. پیش فرض است /tmp/.
-I فهرست راهنما
اضافه کردن دایرکتوری به مسیر جستجو شده برای C شامل فایلها. توجه داشته باشید هیچ فضایی بعد از آن وجود ندارد
من، برای سازگاری با پرچم های پیش پردازنده C.
-S فهرست راهنما
دایرکتوری را به مسیر جستجوی فایل های مشخصات lcl اضافه کنید.
-f پرونده
فایل گزینه ها را بارگیری کنید . اگر این پرچم از خط فرمان استفاده شود، پیش فرض است
~/.splintrc فایل بارگذاری نشده است این پرچم ممکن است در یک فایل گزینه برای بارگیری استفاده شود
یک فایل گزینه دیگر
-نه از فایل های گزینه های پیش فرض (./.splintrc و ~/.splintrc) از بارگیری.
(تنظیم -nof +nof را لغو میکند و باعث میشود فایلهای گزینهها به طور معمول بارگیری شوند.)
-systemdirs دایرکتوری
دایرکتوری ها را برای فایل های سیستم تنظیم کنید (پیش فرض "/ usr / شاملدایرکتوری ها را جدا کنید
با کولون (به عنوان مثال، "/ usr / شامل:/ usr / local / lib"). تنظیمات پرچم به فایل ها منتشر می شود
در دایرکتوری سیستم اگر -systemdirerrors تنظیم شده باشد، هیچ خطایی برای فایل ها گزارش نمی شود
در دایرکتوری های سیستم
پیش پردازنده
این پرچم ها برای تعریف یا عدم تعریف ثابت های پیش پردازنده استفاده می شوند. من -
پرچم نیز به پیش پردازنده C منتقل می شود.
-D مقداردهی اولیه
به پیش پردازنده C منتقل شد.
-U مقداردهی اولیه
به پیش پردازنده C منتقل شد
کتابخانه این پرچم ها ایجاد و استفاده از کتابخانه ها را کنترل می کنند.
-زباله پرونده
ذخیره حالت در برای بارگیری پسوند پیش فرض lcd اضافه می شود اگر دارد
بدون تمدید
-بار پرونده
وضعیت بارگیری از (ایجاد شده توسط -dump). پسوند پیش فرض lcd اضافه می شود اگر
پسوند ندارد فقط یک فایل کتابخانه ممکن است بارگیری شود.
بهطور پیشفرض، اگر از پرچم -load برای بارگذاری a استفاده نشود، کتابخانه استاندارد بارگذاری میشود
کتابخانه کاربر اگر هیچ کتابخانه کاربری بارگیری نشده باشد، ممکن است از یکی از پرچم های زیر استفاده شود
برای انتخاب یک کتابخانه استاندارد متفاوت برای بارگیری موارد توصیف شده، قبل از پرچم + قرار دهید
کتابخانه (یا از بارگیری کتابخانه با استفاده از nolib جلوگیری کنید). به پیوست F مراجعه کنید
اطلاعات مربوط به کتابخانه های ارائه شده
-nolib
هیچ کتابخانه ای را بارگیری نکنید. این از بارگیری کتابخانه استاندارد جلوگیری می کند.
-ansi-lib
از کتابخانه استاندارد ANSI (به طور پیش فرض انتخاب شده) استفاده کنید.
-strict-lib
از نسخه دقیق کتابخانه استاندارد ANSI استفاده کنید.
-posix-lib
از کتابخانه استاندارد POSIX استفاده کنید.
-posix-strict-lib
از نسخه دقیق کتابخانه استاندارد POSIX استفاده کنید.
-1-lib
از نسخه یونیکس کتابخانه استاندارد استفاده کنید.
-1-سخت-لب
از نسخه دقیق کتابخانه استاندارد یونیکس استفاده کنید.
تولید
این پرچم ها کنترل می کنند که چه اطلاعات اضافی توسط اسپلینت چاپ می شود. تنظیم +
باعث می شود اطلاعات توصیف شده چاپ شود. تنظیمات - از آن جلوگیری می کند. به صورت پیش فرض،
همه این پرچم ها خاموش است
-usestderr
پیام های خطا را به خطای استاندارد (به جای استاندارد out) ارسال کنید. این پرچم بوده است
با پرچم های دقیق تر برای کنترل هشدار، پیام وضعیت و مرگبار جایگزین شده است
خطا به طور مستقل جریان می یابد. خروجی اسپلینت +usestderr را ببینید
-خلاصه
خلاصه ای از تمام خطاهای گزارش شده و سرکوب شده را نشان دهید. تعداد خطاهای سرکوب شده
لزوماً صحیح نیستند زیرا خاموش کردن پرچم ممکن است مانع از بررسی برخی موارد شود
برای صرفه جویی در محاسبات انجام می شود و خطاهایی که گزارش نشده اند ممکن است منتشر شوند
متفاوت از زمانی که گزارش می شوند.
-نمایش اسکن
نمایش نام فایل ها در حین پردازش.
-شوالوس
نمایش لیست استفاده از همه شناسه های خارجی مرتب شده بر اساس تعداد استفاده.
-آمار
نمایش تعداد خطوط پردازش شده و زمان بررسی.
-زمان شناس
نمایش توزیع زمان بررسی محل صرف شده است.
-ساکت
سرکوب هرالد و تعداد خطا. (اگر ساکت تنظیم نشده باشد، اسپلینت یک منادی چاپ می کند
با اطلاعات نسخه قبل از شروع بررسی، و یک خط خلاصه کل
تعداد خطاهای گزارش شده.)
-whichlib
نام فایل استاندارد کتابخانه و اطلاعات ایجاد را چاپ کنید.
-حد عدد
حداکثر خطاهای مشابه به طور متوالی گزارش شده است. خطاهای بیشتر هستند
سرکوب شده و پیامی که تعداد پیام های سرکوب شده را نشان می دهد چاپ می شود.
انتظار می رود خطاهای
به طور معمول، اسپلینت انتظار دارد هیچ خطایی را گزارش نکند. وضعیت خروج موفقیت آمیز خواهد بود (0) اگر
هیچ خطایی گزارش نمی شود و در صورت گزارش هر گونه خطایی، خرابی. می توان از پرچم ها برای تنظیم استفاده کرد
تعداد مورد انتظار خطاهای گزارش شده به دلیل سرکوب خطای ارائه شده
مکانیسمها، این گزینهها احتمالاً نباید برای بررسی نهایی برنامههای واقعی استفاده شوند
ممکن است در توسعه برنامه هایی با استفاده از make مفید باشد.
-انتظار
دقیقا خطاهای کد مورد انتظار است. اسپلینت با وضعیت خروج شکست خارج می شود
مگر اینکه خطاهای کد شناسایی می شوند.
-پیام قالب
این پرچم ها نحوه چاپ پیام ها را کنترل می کنند. آنها ممکن است در خط فرمان تنظیم شوند،
در فایل های گزینه یا به صورت محلی در نظرات نحوی. پرچم های خطی و محدود ممکن است
قبل از + یا - به همین معنی باشد. برای پرچم های دیگر، + را روشن می کند
چاپ را توصیف کرده و - آن را خاموش می کند. کادر سمت چپ هر پرچم خود را نشان می دهد
مقدار پیش فرض.
-نمایش ستون
نمایش شماره ستون که در آن خطا پیدا شده است. پیش فرض: +
-showfunc
نمایش نام تعریف تابع (یا ماکرو) حاوی خطا. نام تابع است
یک بار قبل از اولین پیام شناسایی شده در آن تابع چاپ می شود. پیش فرض: +
-showallconjs
همه انواع جایگزین ممکن را نشان دهید (به بخش 8.2.2 مراجعه کنید). پیش فرض: -
-paren-file-format
از فرمت فایل (خط) در پیام ها استفاده کنید.
-نکات
نکاتی را برای توصیف یک خطا و نحوه حذف یک پیام برای اولین بار ارائه دهید
خطای گزارش شده در هر کلاس خطا پیش فرض: +
- راهنمایی های اجباری
برای تمام خطاهای گزارش شده نکاتی ارائه دهید، حتی اگر اشاره قبلاً نمایش داده شده باشد
برای همان کلاس خطا پیش فرض: -
-لینلن عدد
حداکثر طول خط پیام را به شخصیت ها. اسپلینت شکافته خواهد شد
پیام های طولانی تر از کاراکترها در چندین خط طولانی هستند. پیش فرض: 80
حالت گزینشگر پرچم
حالت پرچمها را انتخاب میکند، پرچمهای بررسی حالت را روی مقادیر از پیش تعریفشده تنظیم کنید. آنها سریع ارائه می دهند
روشی درشت برای کنترل اینکه چه دستههایی از خطاها گزارش میشوند. بررسی خاص
ممکن است پرچم ها بعد از یک پرچم حالت تنظیم شوند تا تنظیمات حالت را لغو کنند. ممکن است از پرچم های حالت استفاده شود
به صورت محلی، با این حال تنظیمات حالت، تنظیمات پرچم خط فرمان خاص را لغو می کند. آ
در صورت استفاده از پرچم حالت پس از تنظیم پرچم بررسی حالت، هشدار ایجاد می شود.
اینها توضیحات مختصری هستند تا یک ایده کلی از آنچه هر حالت انجام می دهد ارائه دهد. برای دیدن
تنظیمات پرچم را در هر حالت کامل کنید، از حالت های کمک اسپلینت استفاده کنید. پرچم حالت نیز همین را دارد
اثر زمانی که با + یا - استفاده می شود.
-ضعیف بررسی ضعیف، در نظر گرفته شده برای کد C معمولی بدون حاشیه. بدون بررسی تغییرات، ماکرو
بررسی، قرار گرفتن در معرض تکرار، یا بررسی رابط تمیز انجام می شود. مقادیر نوع را برگردانید
int ممکن است نادیده گرفته شود. انواع bool، int، char و انواع enum تعریف شده توسط کاربر همگی هستند
معادل. اعلانهای سبک قدیمی گزارش نمیشوند.
استاندارد
حالت پیش فرض همه بررسیها توسط نام مستعار سراسری ضعیف، بهعلاوه بررسی اصلاحشده انجام میشود
چک کردن، استفاده از تمام پارامترها، استفاده از حافظه آزاد شده، مقادیر بازگشتی نادیده گرفته شده یا هر مورد دیگری
نوع، بررسی ماکرو، کد غیرقابل دسترسی، حلقههای بینهایت، و موارد سقوط. در
انواع bool، int و char متمایز هستند. اعلامیه های سبک قدیمی گزارش شده است.
-چک می کند
بررسی نسبتاً دقیق همه بررسیها براساس استاندارد انجام میشود، به علاوه باید اصلاح شود
بررسی، قرار گرفتن در معرض تکرار، نام مستعار بازگشت، مدیریت حافظه و رابط های کامل.
-سخت گیرانه
بررسی دقیق غیر منطقی همه بررسیها با چک، بهعلاوه تغییرات و کلی انجام میشود
متغیرهای مورد استفاده در توابع نامشخص، کتابخانه استاندارد دقیق و تایپ دقیق
از اپراتورهای C به اولین نفری که الف را تولید کند جایزه ویژه ای تعلق می گیرد
برنامه واقعی که با بررسی دقیق هیچ خطایی ایجاد نمی کند.
با استفاده از خدمات onworks.net از اسپلینت آنلاین استفاده کنید