Перенос выражений
Область применения: управляемое приложение, мобильное приложение, обычное приложение.
1. При длине строки более 120 символов следует использовать переносы. Строки длиннее 120 символов делать не рекомендуется, за исключением тех случаев, когда перенос невозможен.
2. Длинные арифметические выражения переносятся следующим образом:
- в одной строке может находиться более одного операнда;
- при переносе знаки операции пишутся в начале строки (а не в конце предыдущей строки);
- операнды на новой строке предваряются стандартным отступом, либо выравниваются по началу первого операнда без учета знаков операций.
СуммаДокумента = СуммаБезСкидки
+ СуммаРучнойСкидки
+ СуммаАвтоматическойСкидки;
СуммаДокумента = СуммаБезСкидки
+ СуммаРучнойСкидки
+ СуммаАвтоматическойСкидки;
3.1 Длинные строковые константы рекомендуется переносить с помощью специального символа перевода на новую строку, например:
ТекстЗапроса =
«ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ЗаметкиПоПредмету.КоличествоЗаметок КАК КоличествоЗаметок
|ИЗ
| РегистрСведений.ЗаметкиПоПредмету КАК ЗаметкиПоПредмету
|ГДЕ
| ЗаметкиПоПредмету.Предмет = &Предмет»;
ТекстПредупреждения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр(«ru = ‘Обновление адресного классификатора не требуется.
|В программе уже загружены актуальные адресные сведения от %1.'»),
Формат(ДатаПоследнегоОбновленияКЛАДР, «ДЛФ=D»));
ПоказатьПредупреждение(,ТекстПредупреждения);
При этом не следует переносить строки, содержащие текст сообщения пользователю (объект СообщениеПользователю ).
3.2. В общем случае при конкатенации строк знак «+» рекомендуется писать в начале строки, так же как и при переносе арифметических выражений (см. п.2), например:
ПоляОтбора = «Номенклатура,Характеристика,Склад»
+ ДополнительныеПоляОтбора;
3.3. При конкатенации длинных строк знак «+» можно писать в конце строки, чтобы не ломать общее форматирование текста. Например,
ТекстЗапроса = ТекстЗапроса +
«ВЫБРАТЬ
| Номенклатура.Ссылка КАК Ссылка
|ИЗ
| Справочник. Номенклатура КАК Номенклатура»;
4. При необходимости параметры процедур, функций и методов следует переносить следующим образом:
- параметры выравниваются по началу первого параметра, либо предваряются стандартным отступом;
- закрывающая скобка и разделитель операторов «;» пишутся в той же строке, что и последний параметр;
- также допустим и способ форматирования, который предлагает функция автоформатирования в конфигураторе (см. п. 5).
ИменаДокументов = Новый СписокЗначений;
ИменаДокументов.Добавить(Метаданные.Документы.СтрокаВыпискиРасход.Имя,
Метаданные.Документы.СтрокаВыпискиРасход.Синоним);
ИменаДокументов.Добавить(Метаданные.Документы.РасходныйКассовыйОрдер.Имя,
Метаданные.Документы.РасходныйКассовыйОрдер.Синоним);
ИменаДокументов = Новый СписокЗначений;
ИменаДокументов.Добавить(Метаданные.Документы.СтрокаВыпискиРасход.Имя,
Метаданные.Документы.СтрокаВыпискиРасход.Синоним);
ИменаДокументов.Добавить(Метаданные.Документы.РасходныйКассовыйОрдер.Имя,
Метаданные.Документы.РасходныйКассовыйОрдер.Синоним);
5. Сложные логические условия в Если…ИначеЕсли…КонецЕсли следует переносить следующим образом:
- каждое элементарное условие нужно начинать с новой строки, если длина строки превышает ограничение в 120 символов;
- логические операторы И , ИЛИ ставятся в начале строки, а не в конце предыдущей строки;
- все условия предваряются стандартным отступом, либо выравниваются по началу первого условия, без учета логического оператора (для выравнивания выражений относительно первой строки рекомендуется использовать пробелы).
Если (ВидОперации = Перечисления.ВидыОперацийПоступлениеМПЗ.ПоступлениеРозница)
ИЛИ (ВидОперации = Перечисления.ВидыОперацийПоступлениеМПЗ.ПоступлениеРозницаКомиссия) Тогда
Возврат Истина;
КонецЕсли;
Если ((СтруктураМодуля[Индекс].Блок = Перечисления.ТипыБлоковМодулей.ЗаголовокПроцедуры)
ИЛИ(СтруктураМодуля[Индекс].Блок = Перечисления.ТипыБлоковМодулей.ЗаголовокФункции))
И(Найти(ВРЕГ(СтруктураМодуля[Индекс].Текст), КлючБлока)> 0) Тогда
6. Для выполнения перечисленных выше рекомендаций, кроме автоматического форматирования текста программного модуля, в процессе ввода можно также отформатировать уже введенный текст. Для этого необходимо выделить блок текста, который требуется отформатировать, и выбрать пункт меню Текст — Блок — Форматировать . При этом текстовый редактор проанализирует текст модуля и выполнит его форматирование, при котором содержимое каждой синтаксической конструкции будет сдвинуто вправо на величину табуляции независимо от первоначального расположения строк (лидирующих пробелов). В пустые строки устанавливаются знаки табуляции в соответствии с синтаксической конструкцией.
Для автоматической расстановки переносов строк можно воспользоваться приложенной обработкой.
[Язык C] Перенос строки оператора printf
Подзабыл, как правильно «резать» длинные куски printf, поэтому решил написать эту шпаргалку.
Допустим у вас длиннющее выражение printf и нужно его разбить на несколько небольших для удобочитаемости (или чтобы влезало при встраивании на сайт, например). Есть три способа:
printf("New line " "please");
printf("New line \ please");
printf("New line "); printf("please");
Такие дела. Нельзя просто так взять и… разорвать строку внутри кавычек. Однако помните, что можно смело это делать для аргументов, например, так:
printf("New %d line %c", argument1, argument2);
Как переносить строки в c
Здравствуйте господа программеры!
есть строка кода вида:
#define ALL_FLAGS (FLAG1 | FLAG2 | FLAG3 | . FLAGN)
длинное перечисление всех флагов.
естественно просматривать длинную строку неудобно.
как перенести строку кода на другую строку (если в макросе это вообще возможно) ?
зы. я родом из Delphi и в «Сях» еще пока плаваю
Re: Перенос длинной строки кода . ?
| От: | DV_Sergey |
| Дата: | 18.07.05 04:13 |
| Оценка: |
Здравствуйте, Callisto, Вы писали:
C>Здравствуйте господа программеры!
C>есть строка кода вида:
C>#define ALL_FLAGS (FLAG1 | FLAG2 | FLAG3 | . FLAGN)
C>длинное перечисление всех флагов.
C>естественно просматривать длинную строку неудобно.
C>как перенести строку кода на другую строку (если в макросе это вообще возможно) ?
C>зы. я родом из Delphi и в «Сях» еще пока плаваю
символ \ используется для переноса строк в С/С++
Re[2]: Перенос длинной строки кода . ?
| От: | Callisto |
| Дата: | 18.07.05 05:12 |
| Оценка: |
DV_>символ \ используется для переноса строк в С/С++
Re[3]: Перенос длинной строки кода . ?
| От: | ansi | |
| Дата: | 18.07.05 09:25 | |
| Оценка: | -1 | |
Здравствуйте, Callisto, Вы писали:
DV_>>символ \ используется для переноса строк в С/С++
C>СПАСИБО .
Вверху справа есть двоечка. Она значит «Спасибо». Но раз у тебя большое спасибо, то жми троечку!
Как сделать перенос строки в консоли
Всем привет,
Только начал изучения языка си по книге С. Прата и столкнулся с непонятным для меня моментом, подскажите пожалуйста как это сделать правильно. Задание такое :
«Напишите программу которая выдает следующие выходные данные :
«Привет! Привет! Привет!
Привет! Привет!
Привет! »
В программе должна быть определена функция, которая отображает строку » Привет! » один раз, в тоже время программа может использовать эту функцию столько раз, сколько потребуется.
С определением функции вопросов не возникло, вопрос лишь в том как перенести строку при выводе этих функций?
У меня все печатает в одну строку, буду рад за помощь, спасибо!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
#include void hello(void); int main(void) { hello(); hello(); hello(); hello(); hello(); hello(); return 0; } void hello(void) { printf("Привет!"); }
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Как сделать перенос строки
Здравствуйте, помогите с решением проблемы. Нужно вывести переменную "с" в див, так чтобы 34 и 35.
Как сделать перенос строки?
Здравствуйте, есть объединённые строки в виде ссылок.
Как сделать перенос строки?
Здравствуйте! У меня есть следующий код, который переносит данный из полей одной формы в единое.
Как сделать перенос строки?
$file = ‘data.txt’; // Открываем файл для получения существующего содержимого $current =.
202 / 200 / 65
Регистрация: 06.10.2013
Сообщений: 552
1 2 3 4 5
hello(); hello(); hello(); fputc('\n',stdout); hello(); hello(); fputc('\n',stdout); hello();
Регистрация: 05.01.2015
Сообщений: 10
Спасибо большое, а не могли бы вы еще поподробнее рассказать об этих функциях или скинуть ссылку на их описание и принцип работы?
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Динамический перенос строки в консоли
Вот интересная задачка. Я прикинул что же получится, если попытаться в консоли сделать текстовый.

Убрать перенос строки в консоли
Сначала была проблема с выводом кириллицы в консоль, решил следующим способом: #include.

Как сделать перенос строки в ListBox
У меня есть переменная у которой неизвестно значение, путь может быть длинным, как сделать перенос.
Как сделать перенос строки в label
Здравствуйте! Вывожу в label строку, но она длинная и не вся влазит. Как сделать перенос строки или.
