Are C++ comments considered bad style in C? [closed]

17
задан Federico klez Culloca 29 August 2010 в 13:12
поделиться

7 ответов

Это зависит от того, какую версию C вы используете. C 99 допускает // в качестве комментария, а C 89 — нет.

Если вы хотите максимально обеспечить обратную совместимость, не используйте их. Но я думаю, что это крайний крайний случай. Я готов поспорить, что почти все используют C 99.

Редактировать: любая последняя версия GCC использует большую часть C99. Дополнительную информацию можно найти в Википедии.

25
ответ дан 30 November 2019 в 10:31
поделиться

Комментарии C++ не допускаются в соответствии со стандартом MISRA-C 2004. Некоторые отрасли (в частности, автомобильная) ценят код, совместимый с MISRA, и поэтому комментарии C++ не допускаются. Я считаю, что то же самое относится и к другим инструментам статической проверки кода, таким как LDRA и т. д.

Это не делает их плохими по своей сути, но это означает, что если вы работаете в определенных отраслях и хотите работать профессионально, вы будете не рекомендуется активно использовать комментарии в стиле C++.

9
ответ дан 30 November 2019 в 10:31
поделиться

Если вы используете комментарии C++ в C, есть вероятность, что некоторые компиляторы C не примут ваш код. Я бы посчитал это вредным.

11
ответ дан 30 November 2019 в 10:31
поделиться

Комментарии в стиле C++ были добавлены в C с помощью стандарта C99 (еще не получившего широкой поддержки). Хотя сам стандарт широко не поддерживается в полном объеме, некоторые его части (например, комментарии в стиле C++) к настоящему времени поддерживаются почти в каждом компиляторе. Учитывая, что они были добавлены, это означает, что в них есть потребность, поэтому легко понять, что это не будет считаться плохим стилем, особенно если вы установите для себя рекомендации о том, где что использовать.

Единственная причина не использовать их — это если вы хотите написать корректную программу, компилируемую для C89.

5
ответ дан 30 November 2019 в 10:31
поделиться

Одна из распространенных причин, по которой люди используют // вместо /* */, заключается в том, что вы можете "вложить" первое, а не второе, и поэтому вы можете закомментировать код в котором есть комментарии. Но вам все равно следует использовать #if 0 для комментирования кода на C.

2
ответ дан 30 November 2019 в 10:31
поделиться

"//" поддерживается в C99, но в C89 (который является наиболее поддерживаемым диалектом) не поддерживается.

0
ответ дан 30 November 2019 в 10:31
поделиться

В наши дни это действительно не должно вызывать беспокойства, если только вы не поддерживаете код, написанный специально для компиляции с помощью древних компиляторов и тому подобного.

1
ответ дан 30 November 2019 в 10:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: