Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Apakah tahap amaran pengkompil yang optimum untuk pengkompil C/C yang berbeza?

Apakah tahap amaran pengkompil yang optimum untuk pengkompil C/C yang berbeza?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-02 22:34:301025semak imbas

What are the optimal compiler warning levels for different C/C   compilers?

Tahap Amaran Pengkompil Optimum untuk C/C

Pelbagai penyusun C/C menawarkan tahap amaran yang berbeza, mempengaruhi jumlah dan keterukan amaran yang dilaporkan semasa penyusunan. Berikut ialah beberapa tahap amaran yang disyorkan untuk penyusun berbeza:

GCC/G :

Untuk GCC dan G , tahap yang disyorkan ialah '-Wall'. Ini membolehkan semua amaran yang pengkompil anggap berkaitan dengan kemungkinan ralat atau amalan pengekodan yang lemah.

Sun CC:

Untuk Sun CC, '-xlist=custom' disyorkan , dengan amaran berikut bendera:

  • -xtype
  • -xtype=boundcheck
  • -xtype=fullbounds
  • -xtypespace=follow
  • - xtype=uninitialized

aCC (HPUX):

Untuk aCC, '-qwarn all=on2' dinasihatkan. Ini mendayakan semua amaran yang tersedia, termasuk tahap keterukan tertinggi.

Visual Studio:

Untuk Visual Studio, '/W4' disyorkan. Tetapan ini membolehkan semua amaran kecuali yang dianggap oleh pengkompil sebagai terlalu bising atau berkemungkinan mengelirukan.

Intel:

Untuk penyusun Intel C/C, '- Wall' ialah titik permulaan yang baik. Amaran khusus tambahan boleh didayakan mengikut keperluan, seperti '-Wselect-any-enum-values' atau '-Wno-unused-value'.

GCC/G Extra-Paranoid Flags:

Untuk kewaspadaan yang melampau, set bendera berikut boleh digunakan sebagai tambahan kepada '-Dinding':

 -Weffc++ -pedantic -pedantic-errors -Wextra -Waggregate-return -Wcast-align \
    -Wcast-qual  -Wchar-subscripts  -Wcomment -Wconversion \
    -Wdisabled-optimization \
    -Werror -Wfloat-equal  -Wformat  -Wformat=2 \
    -Wformat-nonliteral -Wformat-security  \
    -Wformat-y2k \
    -Wimplicit  -Wimport  -Winit-self  -Winline \
    -Winvalid-pch   \
    -Wunsafe-loop-optimizations  -Wlong-long -Wmissing-braces \
    -Wmissing-field-initializers -Wmissing-format-attribute   \
    -Wmissing-include-dirs -Wmissing-noreturn \
    -Wpacked  -Wpadded -Wparentheses  -Wpointer-arith \
    -Wredundant-decls -Wreturn-type \
    -Wsequence-point  -Wshadow -Wsign-compare  -Wstack-protector \
    -Wstrict-aliasing -Wstrict-aliasing=2 -Wswitch  -Wswitch-default \
    -Wswitch-enum -Wtrigraphs  -Wuninitialized \
    -Wunknown-pragmas  -Wunreachable-code -Wunused \
    -Wunused-function  -Wunused-label  -Wunused-parameter \
    -Wunused-value  -Wunused-variable  -Wvariadic-macros \
    -Wvolatile-register-var  -Wwrite-strings

Atas ialah kandungan terperinci Apakah tahap amaran pengkompil yang optimum untuk pengkompil C/C yang berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn