Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
ikmik
6 / 6 / 0
Регистрация: 07.07.2011
Сообщений: 117
#1

fstream - символ пробела - C++

28.09.2012, 21:19. Просмотров 1233. Ответов 3
Метки нет (Все метки)

Здравствуйте, господа программисты!
Есть вопрос - почему в ifstream первый символ файла имеет обозначение -1 (if.seekg(-1); )?
И при чтении файла (if >> y; ) вместо пробела выдает следующий символ? Это имеет решение?
Заранее благодарю
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.09.2012, 21:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос fstream - символ пробела (C++):

Вывести вместо пробела другой символ - C++
дана задача: Напишите программу, которая анализирует, какую клавишу нажал пользователь и выводит следующее сообщение: Это цифра; Это...

Как поэлементно считать текст с файла с помощью fstream, и сохранить каждый символ в массив? - C++
как поэлементно считать текст с файла,и сохранить каждый символ в массив?

Смешанное хранение данных в файле: Не удается считать символ пробела (или его отсутствие) после числа - C++
Здравствуйте, есть вот что: Файл, который содержит числа в 16-ричной форме (32 битные адреса) на каждой строке, и в дополнение может...

В исходном предложении поставить между словами вместо пробела вставьте символ '*', вывести полученный текст и количество звездочек - C++
Здравствуйте! Помогите с написанием кода. Задача: В исходном предложении поставить между словами вместо пробела вставьте символ '*',...

Заполнить 2 двухмерных массива символами. Написать функцию которая ставит символ пробела в старшем и младшем...(Использование директив) - C++
Задание: Заполнить 2 двухмерных массива разной длины символами. Написать функцию которая ставит символ пробела в старшем и младшем байте...

Вставить после каждого символа «.» один символ « » (пробел), если после точки нет пробела. - C++
Вставить после каждого символа «.» один символ « » (пробел), если после точки нет пробела. Как сделать так, чтоб между точкой и...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
alsav22
5417 / 4813 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
28.09.2012, 22:02 #2
Цитата Сообщение от ikmik Посмотреть сообщение
Есть вопрос - почему в ifstream первый символ файла имеет обозначение -1 (if.seekg(-1); )?
А в файле что? Если пустой, то -1 означает конец файла (EOF).

Добавлено через 1 минуту
Цитата Сообщение от ikmik Посмотреть сообщение
И при чтении файла (if >> y; ) вместо пробела выдает следующий символ?
Оператор вставки ( >> ) пропускает пробельные символы. Это форматируемый ввод. Если нужно с пробелами читать, используйте неформатируемый ввод: get(), getline() и пр.
ikmik
6 / 6 / 0
Регистрация: 07.07.2011
Сообщений: 117
28.09.2012, 22:16  [ТС] #3
файл не пустой, вначале два символа "#", при попытке списать файл в консоль с if.seekg(0); пишет только один. за второй совет спасибо, завтра посмотрю.
alsav22
5417 / 4813 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
29.09.2012, 01:51 #4
Покажите как файл открываете для чтения.

Добавлено через 3 минуты
Цитата Сообщение от ikmik Посмотреть сообщение
(if.seekg(-1));
Это для чего такое?

Добавлено через 3 часа 10 минут
Если файл открывается просто для чтения, нет надобности применять seekg(). Курсор и так в начале файла, читайте на здоровье. И потом, как я понимаю, if у вас - это поток для чтения? Как на это компилятор реагирует? Имя переменной не должно совпадать с ключевым словом языка.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.09.2012, 01:51
Привет! Вот еще темы с ответами:

Дан тестовый файл. Вывести его содержимое в другой файл, заменив каждое вхождение пробела на символ нижнего подчеркивания. - C++
Дан тестовый файл. Вывести его содержимое в другой файл, заменив каждое вхождение пробела на символ нижнего подчеркивания. Вывести оба...

Подсчитать количество слов, в тексте от пробела до пробела, и количество букв - C++
нужно создать програму считает количество слов, в тексте от пробела до пробела(если два пробела сразу конец текста), а также ...

Вывести строки, в которых символ «*» встречается не менее 2 раз и заменить символ «*» на символ «_» - C++
День добрый. Имеется условие лабы. Написать программу, в которой с клавиатуры вводится до 10 символьных строк. Вывести строки, в...

fstream - C++
Всем доброго дня! Как с помощью библиотеки fstream вывести содержимое файла на экран??


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
29.09.2012, 01:51
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru