Разница между print() и println()
В чем разница между print() и println()?
Я ничего не вижу, когда запускаю код.
@Phyman 100, 👍8
Обсуждение4 ответа
Лучший ответ:
print() печатает все, что вы отправляете.
println() делает то же самое, только после использования println все новое, что печатается, печатается в следующей строке, т.е. формируется новая строка.
Не могли бы вы опубликовать свой код, пожалуйста, так как мой ответ сейчас неполный., @Mathsman 100
Метод print("aString") печатает только строку "aString", но не перемещает курсор на новую строку. Следовательно, последующие инструкции по печати будут печататься в той же строке.
Метод println("aString") печатает строку "aString" и перемещает курсор на новую строку.
Метод println() также можно использовать без параметров, чтобы поместить курсор на следующую строку.
С уважением
Легкий способ увидеть разницу — использовать Serial.print();
/Serial.println();
.
print();
распечатает все, что вы вводите, где бы в данный момент ни находился курсор. Например:
Serial.print("Test");
Serial.print("Words");
Это напечатает:
TestWords_
Подчеркивание отмечает место, где находится курсор (и, следовательно, начало следующей команды печати). Напротив, код:
Serial.println("Test");
Serial.println("Words");
выведет следующее:
Test
Words
_
Вы также можете напечатать несколько операторов, а затем использовать println
следующим образом (обратите внимание на пробел в конце/начале строк):
Serial.print("These ");
Serial.print("Test");
Serial.println(" Words.");
чтобы получить следующий результат:
These Test Words.
_
Вы также можете использовать println();
для добавления символа новой строки. Если вы хотите напечатать переменную, которая не возвращает символ новой строки, для форматирования можно использовать println();
. Пример:
int x = 50;
Serial.print(x);
Serial.println();
Это напечатает:
50
_
Наконец, вы можете добавить в кавычки специальные символы, такие как табуляция \t
, для форматирования. Пример:
Serial.println("Test\tTest")
Это вернет:
Test Test
_
Ваш ответ говорит нам, что функция println() печатает то, что находится в скобках, а затем печатает символ новой строки, а не сначала печатает символ новой строки, а затем печатает то, что находится внутри скобок. Ваша идея подчеркивания для отображения позиции курсора очень хороша. +1 за все это., @Devesh Saini
print() печатает то, что вы хотите, но в одну строку.
Например,
Serial.print("Hello");
Затем вывод в Serial Monitor будет выглядеть так:
HelloHelloHelloHelloHello
println() печатает то же самое, но в новой строке.
Например,
Serial.println("Hello");
Затем вывод в Serial Monitor будет выглядеть так:
Hello
Hello
Hello
Hello
Hello
- C++ против языка Arduino?
- avrdude ser_open() can't set com-state
- Как читать и записывать EEPROM в ESP8266
- Float печатается только 2 десятичных знака после запятой
- устаревшее преобразование из строковой константы в 'char*'
- Запрограммировать ATMega328P и использовать его без платы Arduino.
- Как исправить: Invalid conversion from 'const char*' to 'char*' [-fpermissive]
- Почему запуск последовательного монитора перезапускает скетч?
Действительно? Попробуйте несколько из каждого по порядку и посмотрите, заметите ли вы какую-либо разницу., @Wirewrap
Да, теперь я вижу разницу, @Phyman 100
Ответ на этот вопрос можно было легко найти на сайте Arduino., @Mathsman 100
«ln» из «println» происходит от «line», что означает, что в конце будет напечатан символ новой строки., @rslite