некоторые моменты, где мои ошибки, а где информация устарела. Я, правильно понимаю, что это уже не актуально?(gcc version 12.2.0 (Debian 12.2.0-14)
): Функция scanf при считывании строк с использованием %s считывает символы до первого пробельного символа (пробел, табуляция, новая строка), что означает, что она остановится, как только встретит пробел, и не считает пробелы внутри строки.
актуально
Очень странно. Может кто-нибудь помочь и объяснить, почему такие странные результаты вывода? Фактическая длина строки 25 символов - "Вы - выдающаяся личность.", и scanf пробел не учитывает и читает всю строку.
Кодировка?
test.c: text/x-c; charset=utf-8
А в книжке?
Хорошо, я понял. Это из-за того, что для Unicode необходимо больше чем 1 байт для кодировки символов, вне ASCII. Но, то, что scanf читает полностью строку, не останавливаясь на пробеле, это точно, моя ошибка? Спасибо.
Русские буквы могут занимать 2 байта, но я не уверен
есть такой моментик
Останавливается Видишь, он выводит без фамилии
Всё понял. Спасибо. Это про вывод, а не про длину строки для strlen, я так понял. Но, это странно.
Обсуждают сегодня