มักจะใช้-O
หรือสูงกว่า ( -O1
, -O2
, -Os
ฯลฯ ) ที่ระดับการปรับให้เหมาะสมเริ่มต้น gcc จะมีความเร็วในการรวบรวมและไม่เพียงพอที่จะวิเคราะห์เตือนสิ่งต่าง ๆ เช่นตัวแปรตามหน่วย
พิจารณา-Werror
กำหนดนโยบายเนื่องจากคำเตือนที่ไม่หยุดรวบรวมมีแนวโน้มที่จะถูกละเว้น
-Wall
คำเตือนที่มีแนวโน้มว่าจะเป็นข้อผิดพลาดค่อนข้างมาก
คำเตือนรวมอยู่ใน-Wextra
แนวโน้มที่จะธงทั่วไปรหัสถูกต้องตามกฎหมาย พวกเขาอาจจะมีประโยชน์สำหรับการตรวจสอบรหัส (แม้ว่าโปรแกรมผ้าสำลีสไตล์หาข้อผิดพลาดมากขึ้นจะมีความยืดหยุ่นมากขึ้น) แต่ฉันจะไม่ทำให้พวกเขาสำหรับการพัฒนาปกติ
-Wfloat-equal
เป็นความคิดที่ดีถ้านักพัฒนาในโครงการที่ไม่คุ้นเคยกับจุดลอยและเป็นความคิดที่ไม่ดีถ้าพวกเขามี
-Winit-self
มีประโยชน์ -Wuninitialized
ผมสงสัยว่าทำไมมันไม่ได้รวมอยู่ใน
-Wpointer-arith
-pedantic
จะเป็นประโยชน์ถ้าคุณมีรหัสส่วนใหญ่แบบพกพาที่ไม่ได้ทำงานกับ
-save-temps
,-Wshadow
และ-fmudflap
เป็นคนพบที่ยิ่งใหญ่ที่สุดผมไม่ทราบว่าของขอบคุณทั้งหมด