Обещал ответ ЧатЖПТ про скобки.
Повторю, что обычно пользуются тем, который настроен в ИДЕ по умолчанию. Мало кто знает как изменить его в ИДЕ, от себя скажу, что и в Ардуино ИДЕ 2.х.х и в ВСКоде (они на одном движке) это настраивается.
…
ОТВЕТ ПРО СКОБКИ
…
Расстановка фигурных скобок в C и C++ — это вопрос стиля кодирования. Наиболее популярные стили включают:
1. Керниган и Ричи (K&R)
Этот стиль используется в оригинальной книге по C, написанной Брайаном Керниганом и Деннисом Ричи. Он широко распространён и используется во многих проектах.
Пример:
if (x > 0) {
doSomething();
} else {
doSomethingElse();
}
- Открывающая фигурная скобка располагается на той же строке, что и управляющая конструкция.
- Закрывающая фигурная скобка находится на новой строке и выровнена с управляющей конструкцией.
2. Allman (ANSI)
Этот стиль более визуально структурирован, так как открывающая скобка всегда размещается на новой строке.
Пример:
if (x > 0)
{
doSomething();
}
else
{
doSomethingElse();
}
- Открывающая скобка на новой строке.
- Код внутри блока чётко виден благодаря увеличенному пространству.
3. GNU
Используется в проектах GNU. Скобки и отступы могут быть непривычны для тех, кто использует K&R или Allman.
Пример:
if (x > 0)
{
doSomething();
}
else
{
doSomethingElse();
}
- Открывающая скобка на новой строке и выровнена под кодом.
- Стиль подчёркивает связь скобок с их контекстом.
4. Whitesmiths
Редко используемый стиль, который делает акцент на уровне вложенности, добавляя отступы и для скобок.
Пример:
if (x > 0)
{
doSomething();
}
else
{
doSomethingElse();
}
- Скобки на отдельной строке и с отступом.
- Сложнее для восприятия, но подчёркивает вложенность блоков.
5. Horstmann
Этот стиль похож на Allman, но открывающая фигурная скобка расположена на той же строке, что и код внутри блока.
Пример:
if (x > 0)
{ doSomething();
}
else
{ doSomethingElse();
}
- Подходит для экономии вертикального пространства.
6. Стиль 1TBS (One True Brace Style)
Часто используется в сообществе JavaScript и является модификацией K&R. В нём допускается, чтобы скобки для функций и классов могли быть как в Allman.
Пример:
if (x > 0) {
doSomething();
} else {
doSomethingElse();
}
7. Миксованные стили
Иногда программисты адаптируют комбинацию этих стилей, чтобы соблюдать корпоративные стандарты или собственные предпочтения.
Как выбрать стиль?
- Следуйте стандартам вашей команды или проекта.
- Если нет строгих правил, используйте K&R — он считается наиболее популярным.
- Убедитесь, что стиль остаётся консистентным по всему коду.
Инструменты автоматизации
Используйте утилиты вроде clang-format или astyle, чтобы автоматически форматировать код в выбранном стиле.