ФлеймФорумПрограммирование

Arduino String - строки которые мы заслужили? (5 стр)

Страницы: 14 5 6 711 Следующая »
#60
15:12, 12 авг 2024

Zefick
> Кем запрещённая? Можно пруфы? Ты как всегда пишешь чушь. Если уж и существуют какие-то общепризнанные истины в форматировании, то это только то, что как раз именно конкатенация строк это наихудший из возможных способов.
Нечасто соглашаюсь с зефиком, но тут ты прав. printf/sprintf - отличные инструменты для адекватного форматирования строк. sscanf тоже вполне ничего, если строка точно имеет нужный форматю.

#61
15:15, 12 авг 2024

=A=L=X=
> Там просто не было такого и приходилось лишаться и изобретать. Изобрели.
В паскале строки изначально были базовым типом с кучей функционала и все равно Format там есть, причем его формат почти 1 в 1 как в C.

#62
(Правка: 15:34) 15:29, 12 авг 2024

monobogdan
В паскале был write(ln) с особой семантикой.
Ничего похожего на принтф не было.

#63
15:34, 12 авг 2024

=A=L=X=
Только хо ел предложить перейти на паскаль но ты меня опередил

#64
15:42, 12 авг 2024

=A=L=X=
> Ничего похожего на принтф не было.
Да?

https://www.freepascal.org/docs-html/current/rtl/sysutils/format.html

#65
15:57, 12 авг 2024

monobogdan
Найди format в стандарте паскаля раньше эпохи дельфи.
Не было там никогда такого.

#66
19:51, 12 авг 2024

=A=L=X=
> Какой травмой детства и изнасилованием в жопу малолетки конечно проникнуты тут высказывавшиеся на тему того что нельзя конкатенировать строку и число вот просто как оно есть в скриптовых языках мне лично НЕВЕДОМО.
> Это непостижимо. Какие то вот травмы видимо глубокие. Слава богу у меня ничего такого не случалось.
Продолжай себя в этом убеждать.

#67
19:58, 12 авг 2024

=A=L=X=
В мане турбопаса не нашел. В Borland Pascal тоже не было? Он все таки круче был.

#68
20:05, 12 авг 2024

Went
> Что мешало сделать вместо неочевидного
> конструктора свободную функцию с
> осмысленным названием?
Язык не должен изобиловать названиями функций, переменных, констант. Представьте ситуацию, когда вы пишете свою функцию, дали ей название, а оно... упс 😮 уже занято.

#69
20:05, 12 авг 2024

Имбирная Ведьмочка

https://helpme1s.ru/funkciya-format-v-yazyke-1s-8-v-primerax

  /// Как задать представление значения типа Булево 
    /// при выводе в 1с 8.3, 8.2
 
    Сообщить(Формат(Ложь, "БЛ=""врёшь!""")); // врёшь!
    Сообщить(Формат(Истина, "БИ=""правду говоришь""")); // правду говоришь
 
    /// Как задать представление периода при выводе в 1с 8.3, 8.2
 
    Сообщить(
        ПредставлениеПериода(
            НачалоКвартала(ТекущаяДата()),
            КонецКвартала(ТекущаяДата()),
            "ФП=Истина")); // 3 кв. 2013 г., влияет, если 6 или 9 месяцев
 
    /// Как задать число прописью при выводе в 1с 8.3, 8.2
 
    Сообщить(
        ЧислоПрописью(123.65)
    );  // Сто двадцать три  65
 
    Сообщить(
        ЧислоПрописью(
          123.65,,
          "рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2")
    );  // Сто двадцать три рубля 65 копеек

Когда в плюсах появится поток вывода в ЧислоПрописью - тогда продолжим этот разговор.

#70
20:10, 12 авг 2024

=A=L=X=
> Когда в плюсах появится поток вывода в ЧислоПрописью - тогда продолжим этот разговор.
Сразу на 120 языках?

#71
20:12, 12 авг 2024

Имбирная Ведьмочка
> Сразу на 120 языках?
Почему бы и нет. Или у вас места на диске мало осталось под libc++.dll

#72
(Правка: 20:22) 20:18, 12 авг 2024

Имбирная Ведьмочка
> Сразу на 120 языках?

Да хотя бы на одном.
Вангую что не появится.
Это прикладная тематика и как ни странно, но вывод конкетенация строк это та же самая базовая прикладная тематика.
Нет никакого логического обоснования почему строку нельзя сочетать с числом чтобы родить строку с представлением числа.
Да все скриптовые языки только этим и занимаются. Им дозволено и всё норм.
Но как только в Arduino IDE появился класс String который это делает, то что взыграло то? Откуда агрессия и неприятие?
Что случилось?
Элементарная штука которая мне экономит кучу символов в коде - с каких пор краткость и лаконичность кода стала злом?
Шозанахер?
С кем и почему я сейчас спорю зачем то, а не собираю кучу одобрений и прозрений "а что так можно было????"?
P.S.
Да, ептыть по стандартам C++ так можно было - писать String("abc") + 123 + " а в других единицах это " + 6.7 - и это компилируется и работает.
И это круто. Это прикольно. Это экономит.
И это не std::string, да.

#73
(Правка: 20:36) 20:34, 12 авг 2024

=A=L=X=
> Да хотя бы на одном.
На одном — в стдлибе не нужно. Эта либа не для одного пузыря делается. Либо на всех, либо никак.

=A=L=X=
> Да все скриптовые языки только этим и занимаются. Им дозволено и всё норм.
Ну вот какие такие "все"? Я вот только джаваскрипт знаю, где 2 + "2" == "22". В питоне — это рантайм ошибка. В пшп и луа — конкатенация вообще по-другому обозначается. Какие такие "все" языки разрешают смешанный плюс, кроме позорного джаваскрипта и вот этого твоего ардуино-стринга?

iw4nna.rock
> Почему бы и нет. Или у вас места на диске мало осталось под libc++.dll
А что делать, когда через 10 лет какое-нибудь Министерство Культуры Ебипта выдаст указ, что теперь, в прописном написании числа "12345", вместо закорючки налево нужно делать закорючку направо — срочно выпускаем новый стандарт цпп?

#74
20:38, 12 авг 2024

iw4nna.rock
Совсем толсто.

Страницы: 14 5 6 711 Следующая »
ФлеймФорумПрограммирование