Как вы теперь знаете, #this is line comment
и /* use this for block comments */
Однако быть осторожным при использовании #
. К сожалению, #
также является обычно используемым символом директивы препроцессора C! Это означает, что:
# include comments in your code to get full credit
в начале строки (пробелы не учитываются) даст вам error: #include expects "FILENAME" or <FILENAME>
с GCC, даже с пробелом после #
. (С другой стороны, ##
будет работать. Просто не используйте его ни в каких строках, которые являются частью макроса #define
, потому что это оператор вставки маркера.) Вам не нужно беспокоиться об этой проблеме, если вы но не в начале строки. Слова, которые вы не должны использовать: include, if, else, line, define
, и все остальное в препроцессоре C.
Это дало много учеников в моем классе отладочной головоломки, поэтому я решил поделиться этим.
Обновление: После дальнейшего тестирования, иногда /
и //
для комментариев линии также поддерживаются. Однако это, по-видимому, характерно только для некоторых архитектур.
/
Может быть использован только в начале строки (после удаления пробелов).
//
Работы довольно много, как можно было ожидать от C.
спасибо! Как ни странно, GNU Emacs не поддерживает шестнадцатеричные комментарии в синтаксической раскраске. –