Подтвердить что ты не робот

Есть ли утилита для отступов программ на С++

Я пытаюсь использовать программу "indent" для отступов программ на С++. Но, похоже, это не работает нормально. Это еще больше заставляет отступать.

Это файл класса. Можете ли вы предложить правильные варианты для нее или другой программы, которая работает?

Спасибо

4b9b3361

Ответ 1

Попробуйте Художественный стиль:

Художественный стиль - это индентор исходного кода, форматирование и декодер исходного кода для языков программирования C, С++, С# и Java.

Ответ 2

в visual studio, CTRL + a, CTRL + k, CTRL + f будет автоматически отступать весь файл, в котором вы работаете.

Ответ 3

Многие редакторы, такие как Vim и Emacs, имеют функцию, которая обновляет код в соответствии со своим встроенным стандартом отступа.

В Vim вы можете набрать = с любым движением. (Например, =% на любом разделителе блоков или S-v, чтобы выбрать регион, а затем = для переформатирования.) Команда gq может использоваться для переформатирования комментариев и другого текста.

В Emacs вы можете ввести M-x indent-region после выбора региона. (Например, с M-< и M->.) Вы также можете переформатировать комментарии с помощью M-x fill-paragraph.

Ответ 4

Другим инструментом для автоматического форматирования кода на С++ является clang-format.

Ответ 6

Это в ответ на OP и другие плакаты: я работаю под Windows и искал отступ. Это то, что я узнал:

Я попробовал bcpp. Кажется, он довольно старый (более или менее с 1996 года), и вам нужно найти windows exe. Я нашел здесь: http://www.zeusedit.com/zforum/viewtopic.php?t=1067. Тем не менее, я думаю, что это не стоит того, чтобы беспокоиться, так как он может использовать только пространство/вкладку, уровень отступов и преобразование скобок.

Тогда есть Художественный стиль, который является новее и на sourceforge. Он кажется вполне способным, но он не может, например, переформатировать пробелы вокруг имен функций и параметров (например, превратить if ( a ( b ) ) в if (a(b)).

Мне нравится отступ Cygwin (http://www.cygwin.com/), но он отлично работает только в файлах, разделенных символом новой строки, поэтому вы должны использовать его как msgstr "dos2unix < infile | indent...". Но отступ не будет переформатировать комментарии в коробке...:)

Может быть, комбинация художественного стиля и отступ Cygwin работает лучше всего. Теперь я использую эту командную строку: astyle --style=kr -s3 --break-closing-brackets < infile.cpp | dos2unix | indent --no-tabs --k-and-r-style --indent-level 3 --dont-cuddle-else | unix2dos. Я доволен, согласен, но, кроме того, он дает очень хороший результат.:)

Ответ 7

bcpp, доступный в любом дистрибутиве linux (и, вероятно, для mingw/cygwin, но я его не проверял) является С++ индентор и декоратор. Вы можете параметризовать, как это работает с кодом.

Ответ 8

Еще один короткий ключ в Visual Studio 2008:

Ctrl + A, Alt + F8

Ответ 9

В netbeans вы можете просто сделать

Alt + Shift + F

Пожалуйста, убедитесь, что плагины установлены для соответствующего языка. Например, для отступов PHP-кода вам нужно выбрать netbeans PHP или установить плагины PHP из репозитория.