|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
|
Табуляция и пробелы31.07.2019, 21:45. Показов 19636. Ответов 38
Метки нет (Все метки)
Всем привет! Вопрос у меня появился. По каким принципам getchar рисует табуляцию? В консоли если ввести 1 символ и потом таб, то улетит на 7 пробелов, а если 7 символов то на 1. Ну тут в роде как не трудно догадаться, что 0 символов это 8 пробелов будет, а нет, 7. В общем, запутался сам.
И сразу еще один вопрос. Как посчитать програмно на сколько пробелов влепился таб?
0
|
|
| 31.07.2019, 21:45 | |
|
Ответы с готовыми решениями:
38
Табуляция функции Циклы и табуляция функции Почему табуляция происходит по-разному? |
|
4148 / 2726 / 433
Регистрация: 09.09.2017
Сообщений: 12,080
|
||||||||
| 05.08.2019, 12:08 | ||||||||
0
|
||||||||
|
2493 / 1157 / 709
Регистрация: 25.04.2016
Сообщений: 3,339
|
|
| 05.08.2019, 15:39 | |
|
Байт, Catstail, Evg, COKPOWEHEU, Ethereal, ваше мнение о нужности табуляций никто не спрашивал. Создайте отдельную тему и флудите там сколько влезет. Особенно если вам не чего ответить непосредственно по вопросу ТС.
0
|
|
| 05.08.2019, 17:08 | |
|
Не по теме: stake-k26, учить, как вести себя - начинай с самого себя. Мы у тебя ни советов, ни поучений не просили.
0
|
|
|
|
|||
| 05.08.2019, 20:20 | |||
|
C #define AAA \ int AAA x; Тут тоже пример того, что стандарт был спроектирован криво, а разработчики компилятора с этой дуростью борются своими силами Добавлено через 1 минуту
0
|
|||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
||
| 05.08.2019, 22:22 | ||
|
0
|
||
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
|||
| 06.08.2019, 07:34 [ТС] | |||
Не по теме: А если говорить о Phyton, то я не думаю, что Google - это стадо, в котором долгое время работал создатель этого феноменального языка программирования. И это лично мое мнение и пусть каждый останется при своем мнении. И давайте не спорить по этому поводу, пожалуйста. Спасибо!
0
|
|||
| 06.08.2019, 09:43 | |
|
Не по теме: Catstail, не поймите превратно, я не пытался никого задеть. Тем не менее я считаю неуместным развитие обсуждения в данной теме, поскольку оно уже слишком далеко ушло от первоначального вопроса. Вон, посмотрите, речь уже и по стилистике кода пошла, что не имеет никакого отношения ни к механизму работы табуляции, ни к замене символа табуляции пробелами.
0
|
|
|
6773 / 2741 / 385
Регистрация: 17.02.2013
Сообщений: 4,048
|
|||
| 06.08.2019, 09:55 | |||
|
0
|
|||
|
4148 / 2726 / 433
Регистрация: 09.09.2017
Сообщений: 12,080
|
||||
| 06.08.2019, 10:01 | ||||
|
Они, наверное, на нас с той же жалостью смотрят, мол отступы ничего не значат, как же они в своей лапше разбираются.
0
|
||||
|
6773 / 2741 / 385
Регистрация: 17.02.2013
Сообщений: 4,048
|
||
| 06.08.2019, 10:04 | ||
|
А по вопросу ТC давно ответили. Неужто надо повторить ?
0
|
||
|
|
|||||||
| 06.08.2019, 10:54 | |||||||
|
Не по теме:
Не по теме:
Не по теме:
1
|
|||||||
|
4148 / 2726 / 433
Регистрация: 09.09.2017
Сообщений: 12,080
|
||||||||||||
| 06.08.2019, 11:59 | ||||||||||||
В результате, хотя перенос строки используется в основном в макросах, он там именно что используется. А характерен он именно для кода Си в целом. Ну и не только на Си, понятное дело: в том же makefile оно тоже работает. Похожий принцип используется в ассемблерных вставках: там объединяют Си-шные строки, разделенные пробельными символами, а для собственно переноса используют символ переноса:
0
|
||||||||||||
|
|
|||
| 06.08.2019, 22:49 | |||
|
1
|
|||
|
4148 / 2726 / 433
Регистрация: 09.09.2017
Сообщений: 12,080
|
||
| 07.08.2019, 10:45 | ||
|
0
|
||
|
|
||
| 07.08.2019, 10:58 | ||
|
Другими словами, есть дефекты проектирования (по другому я не могу это назвать) языков: - табуляция в Makefile'ах - обязательное требование, чтобы обратный слэш был последним символом в строке, а лишний хвостовой пробел всё ломает (препроцессор Си, Makefile, bash, наверное где-то ещё) - отступы в python'е - если повспоминать, наверняка ещё что-то найдётся Эти дефекты описываются единым образом. Непечатные символы (т.е. те, которые в текстовом редакторе явно не видны) влияют на код программы. А самое главное - в таком идиотском поведении не было никакой реальной необходимости. Частично это придурь афторов, частично это попытка поставить формальную корректность (то бишь юридический аспект вопроса) поперёк здравого смысла. А по прошествии лет, когда стало ясно, что люди массово об эти проблемы спотыкаются, в интерпретаторы-компиляторы-прочее начинают вносить всяческие системы предупреждения, которые помогают человеку исправить ошибки в исходнике или которые как-то видоизменяют синтаксис. Это в очередной раз подтверждает, что с точки зрения грамматики языка все эти ситуации нормально распознаются и не было надобности изначально всё делать через задницу
2
|
||
|
4148 / 2726 / 433
Регистрация: 09.09.2017
Сообщений: 12,080
|
|
| 07.08.2019, 13:15 | |
|
С такой формулировкой согласен. Разве что стоило бы выражаться менее категорично.
0
|
|
|
|
|
| 07.08.2019, 14:14 | |
|
Вспомнил, ешё в Фортране-77 нужно 6 пробелов ставить в начале строки, елси там нет метки. Правда здесь всё-таки была хоть какая-то реальная необходимость. Язык проектировался в те времена, когда памяти на машинах было очень мало, а подобные ограничения позволяли упростить код компилятора. И как-то это было связано с необходимостью работать с перфокартами (правда я совсем не знаю хоть какую-то конкретику)
0
|
|
| 10.08.2019, 07:13 [ТС] | |
|
0
|
|
| 10.08.2019, 07:13 | |
|
Почему табуляция работает по-разному? Табуляция функций с использованием оператора цикла с постусловием do … while Настройка Android studio. Табуляция, пробелы Различия между "пробелы" и "табуляция"
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства.
Жизнь действительно предъявляет каждому. . .
|
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
|
Лето уходит
kumehtar 17.08.2026
|
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
|
|
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины".
За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html
Задача: . . .
|
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|