Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/29: Рейтинг темы: голосов - 29, средняя оценка - 4.97
 Аватар для Ryuk
183 / 182 / 56
Регистрация: 10.06.2011
Сообщений: 871

\n \0 EOF

22.10.2013, 23:46. Показов 5514. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер, возник такой вопрос: зачем мы заменяем символ конца строки на нуль символ в данном коде (удаление символов содержащихся в s2 из строки s1), если можем вести поиск до \n?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <stdio.h>
#define MAX 100
#define DEL 10
 
void squeeze (char s[], char s1[]);
void written (char s[]);
 
main() {
    char str[MAX];
    char str1[DEL];     
 
    written (str);
    written (str1);
    squeeze (str, str1);
    printf("%s\n", str);
}
 
void written (char s[100]) {
    int i, c;
 
    i = 0;
    while ((c = getchar()) != '\n') {
        s[i] = c;
        ++i;
    }
    s[i] = '\0';
}
 
void squeeze (char s[], char s2[]) {
    int k, i, j;
 
    for (k = 0; s2[k] != '\0'; k++) { 
        for (i = j = 0; s[i] != '\0'; i++)
            if (s[i] != s2[k])
                s[j++] = s[i];
        s[j] = '\0';
    }
}

И в чем разница между вводом до EOF и до \n?


C
1
2
3
4
while ((ch = getchar()) != EOF) 
{
    ...
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.10.2013, 23:46
Ответы с готовыми решениями:

EOF
Как сделать чтение файла до конца самого файла, а не до конца определенных символов: while (a != EOF); тут как я понимаю система читает...

Eof и массивы
В текстовом файле хранятся числа, расположенные в случайном порядке, их кол-во неизвестно; нужно вывести их на экран, а также записать их в...

Не работает while (!***.eof() !
Здравствуйте, задание такое: Вводить с клавиатуры данные и записывать их в файл в виде Имя группа оценка Иванов ...

6
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
23.10.2013, 00:59
Цитата Сообщение от Ryuk Посмотреть сообщение
зачем мы заменяем символ конца строки на нуль символ в данном коде
Строка в стиле С - это массив char c '\0' в конце (это и есть символ конца строки). '\n' - это символ новой строки.

Добавлено через 7 минут
Цитата Сообщение от Ryuk Посмотреть сообщение
И в чем разница между вводом до EOF и до \n?
В консольном потоке EOF нужно генерировать (в Windows Ctrl + Z, Ctrl + C).
0
 Аватар для Ryuk
183 / 182 / 56
Регистрация: 10.06.2011
Сообщений: 871
23.10.2013, 16:06  [ТС]
alsav22, в конце строки стоят два символа \n и \0?

По поводу eof не понял. Не могли бы по подробнее разъяснить?
0
859 / 448 / 112
Регистрация: 06.07.2013
Сообщений: 1,491
23.10.2013, 16:09
Цитата Сообщение от Ryuk Посмотреть сообщение
в конце строки стоят два символа \n и \0?
в конце строки только 0, \n - по желанию, как любой другой символ
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
23.10.2013, 16:19
Цитата Сообщение от Ryuk Посмотреть сообщение
Не могли бы по подробнее разъяснить?
Такой код запустите и попробуйте выйти:
C++
1
2
3
4
while ((ch = getchar()) != EOF) 
{
   
}
Добавлено через 4 минуты
Цитата Сообщение от Ryuk Посмотреть сообщение
в конце строки стоят два символа \n и \0?
Цитата Сообщение от alsav22 Посмотреть сообщение
'\n' - это символ новой строки.
Может быть, может нет. Смотря где, смотря как... В Windows и DOS состоит из двух символов: \r\n (13 и 10), в UNIX - из одного \n (10), в Mac OS - из одного \r (13).
0
23.10.2013, 16:21

Не по теме:

Цитата Сообщение от alsav22 Посмотреть сообщение
Mac OS - из одного \r (13).
Зачем так?(по сути это символ возврата каретки?)

0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
23.10.2013, 16:55
И что? Пишут, что в Mac OS символ новой строки такой и один, в отличие от Windows. Значит и каретку возвращает и на новую строку переходит. Называется разделитель строк.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.10.2013, 16:55
Помогаю со студенческими работами здесь

EOF K&R
Всем доброго времени суток. Изучаю Си по Дейтелам, а теперь попала в руки книга авторов языка. Интересно теперь будет параллельно по двум...

Int Eof
Вот проблема есть массив int a заполнять его целыми числами последовательность завершается признаком конца ввода

Игнорирование EOF
Здравствуйте, вот имеется строчка кода, при нажатии клавиш ctrl+d цикл зацикливается и бесконечно выводится &quot;Такого способа заполнения...

EOF и getchar
Добрый вечер, у меня есть следующий код: #include &lt;locale.h&gt; #include &lt;stdio.h&gt; #include &lt;string.h&gt; #include &lt;ctype.h&gt; ...

EOF что это
В книге встречается записи типа ..если встретится указанный символ-ограничитель, по умолчанию это EOF... Что за EOF?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru