** โปรดมีส่วนร่วมในการสำรวจความคิดเห็นนี้สำหรับคุณลักษณะที่วางแผนโดยฉัน **
CPPCHECK เป็นเครื่องมือวิเคราะห์แบบคงที่สำหรับรหัส C/C ++ มันให้การวิเคราะห์รหัสที่ไม่ซ้ำกันเพื่อตรวจจับข้อบกพร่องและมุ่งเน้นไปที่การตรวจจับพฤติกรรมที่ไม่ได้กำหนดและโครงสร้างการเข้ารหัสที่เป็นอันตราย เป้าหมายคือการมีข้อดีที่ผิดพลาดน้อยมาก CPPCHECK ได้รับการออกแบบมาเพื่อวิเคราะห์รหัส C/C ++ ของคุณแม้ว่าจะมีไวยากรณ์ที่ไม่ได้มาตรฐาน (ทั่วไปในโครงการฝังตัว)
สร้าง cppcheck.yml ภายใต้ .github/workflows ด้วยเนื้อหาต่อไปนี้
name : cppcheck-action-test
on : [push]
jobs :
build :
name : cppcheck-test
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
- name : cppcheck
uses : deep5050/cppcheck-action@main
with :
github_token : ${{ secrets.GITHUB_TOKEN}}
- name : publish report
uses : mikeal/publish-to-github-action@master
env :
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
BRANCH_NAME : ' main ' # your branch name goes here name : cppcheck-action
on : [push]
jobs :
build :
name : cppcheck
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
- name : cppcheck
uses : deep5050/cppcheck-action@main
with :
github_token : ${{ secrets.GITHUB_TOKEN}}
check_library :
skip_preprocessor :
enable :
exclude_check :
inconclusive :
inline_suppression :
force_language :
force :
max_ctu_depth :
platform :
std :
output_file :
other_options :
- name : publish report
uses : mikeal/publish-to-github-action@master
env :
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
BRANCH_NAME : ' main ' # your branch name goes here| ตัวเลือก | ค่า | คำอธิบาย | ค่าเริ่มต้น |
|---|---|---|---|
| check_library | enable disable | แสดงข้อความข้อมูลเมื่อไฟล์ไลบรารีมีข้อมูลไม่สมบูรณ์ | disable |
| skip_preprocessor | enable disable | พิมพ์เอาต์พุต preprocessor บน stdout และอย่าทำการประมวลผลเพิ่มเติมใด ๆ | disable |
| เปิดใช้งาน | all , warning , style , performance , portability , information , unusedFunction , missingInclude | เปิดใช้งานการตรวจสอบเพิ่มเติม หากคุณต้องการเปิดใช้งานการตรวจสอบหลายครั้งในครั้งเดียวให้แยกออก , ใช้โดยไม่มีพื้นที่ว่างใด ๆ ตัวอย่าง: style,warning,performance | all |
| exclude_check | ./path/to/ignore | ให้ไฟล์หรือเส้นทางไดเรกทอรีเพื่อแยกออกจากการตรวจสอบ ตัวอย่าง: ./no_check.cpp | ไม่มีอะไรจะเพิกเฉย |
| ไม่สามารถสรุปได้ | enable disable | อนุญาตให้รายงาน CPPCHECK แม้ว่าการวิเคราะห์จะสรุปไม่ได้ | enable |
| inline_suppression | enable disable | เปิดใช้งานการปราบปรามแบบอินไลน์ ใช้พวกเขาโดยวางความคิดเห็นอย่างน้อยหนึ่งรายการเช่น: '// cppcheck-suppress warningid' | disable |
| force_language | c , c++ | บังคับให้ CPPCHECK ตรวจสอบไฟล์ทั้งหมดเป็นภาษาที่กำหนด ค่าที่ถูกต้องคือ: c , c++ | ตรวจพบอัตโนมัติ |
| บังคับ | enable disable | บังคับให้ตรวจสอบการกำหนดค่าทั้งหมดในไฟล์ | disable |
| max_ctu_depth | number | ความลึกสูงสุดในการวิเคราะห์โปรแกรมทั้งหมด ค่าที่ใหญ่กว่าจะหมายถึงข้อผิดพลาดมากขึ้นสามารถพบได้ แต่ยังหมายถึงการวิเคราะห์จะช้าลง ตัวอย่าง: 4 | 2 |
| แพลตฟอร์ม | unix32 , unix64 , win32A , win32W , win64 , avr8 , elbrus-e1cp , pic8 , pic8-enhanced , pic16 , mips32 , native , unspecified | ระบุประเภทและขนาดเฉพาะของแพลตฟอร์ม | unspecified |
| STD | c89 , c99 , c11 , c++11 , c++14 , c++17 , c++20 | ตั้งค่ามาตรฐาน C/C ++ | c11 , c++20 |
| output_file | ./path/to/output/file.txt | ให้ชื่อไฟล์สำหรับรายงานผลลัพธ์ | ./cppcheck_report.txt |
| other_options | --option1 --option2=value -opt3 | ตัวเลือกอื่น ๆ ที่คุณต้องการเพิ่มแยกออกจากพื้นที่ตัวเลือกที่ไม่ถูกต้องจะทำให้เกิดความล้มเหลว ตัวอย่าง: --bug-hunting --verbose | disable |
สำหรับรายละเอียดเพิ่มเติมตรวจสอบเอกสาร CPPCHECK
ใบอนุญาต MIT
ลิขสิทธิ์ (c) 2021 Dipankar Pal
ได้รับอนุญาตโดยไม่ต้องเสียค่าใช้จ่ายสำหรับบุคคลใด ๆ ที่ได้รับสำเนาซอฟต์แวร์นี้และไฟล์เอกสารที่เกี่ยวข้อง ("ซอฟต์แวร์") เพื่อจัดการในซอฟต์แวร์โดยไม่มีการ จำกัด รวมถึง แต่ไม่ จำกัด เฉพาะสิทธิ์ในการใช้สำเนาดัดแปลงผสานเผยแพร่เผยแพร่
ประกาศลิขสิทธิ์ข้างต้นและประกาศการอนุญาตนี้จะรวมอยู่ในสำเนาทั้งหมดหรือส่วนสำคัญของซอฟต์แวร์
ซอฟต์แวร์มีให้ "ตามสภาพ" โดยไม่มีการรับประกันใด ๆ ไม่ว่าโดยชัดแจ้งหรือโดยนัยรวมถึง แต่ไม่ จำกัด เฉพาะการรับประกันความสามารถในการค้าการออกกำลังกายสำหรับวัตถุประสงค์เฉพาะและการไม่เข้าร่วม ไม่ว่าในกรณีใดผู้เขียนหรือผู้ถือลิขสิทธิ์จะต้องรับผิดชอบต่อการเรียกร้องความเสียหายหรือความรับผิดอื่น ๆ ไม่ว่าจะเป็นการกระทำของสัญญาการละเมิดหรืออื่น ๆ ที่เกิดขึ้นจากหรือเกี่ยวข้องกับซอฟต์แวร์หรือการใช้งานหรือการติดต่ออื่น ๆ ในซอฟต์แวร์
ไอคอนที่ผลิตโดย freepik จาก www.flaticon.com
ขอบคุณไปที่คนที่ยอดเยี่ยมเหล่านี้ (คีย์อีโมจิ):
แบดเดอร์ | Stefan Hagen - |
โครงการนี้เป็นไปตามข้อกำหนดทั้งหมดของผู้เข้าร่วม การมีส่วนร่วมทุกชนิดยินดีต้อนรับ!