Форум программистов, компьютерный форум, киберфорум
Наши страницы

Чтение из файла только букв и знаков препинания - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подсчет цены в multimap http://www.cyberforum.ru/cpp-beginners/thread935353.html
Всем добрый день, У меня не получается подсчитать стоимость всех заказанных блюд в чеке. Я сохраняю заказ в файл. Помогите, пожалуйста правильно написать код для подсчета цены. Я пробовала так ...
C++ Получить доступ к обьекту класса в друж. функц. этому классу при этом не передавая этот объект в качестве параметра Допустим имеется класс lass1 для него определена дружественная функция friend1. Вопрос можно ли как то получить доступ к объекту который не был передан этой функций friend в качестве аргумента ? http://www.cyberforum.ru/cpp-beginners/thread935337.html
Перевод из Цельсия в Фаренгейт C++
Задача такая: Напишите программу, в которой функция main () вызывает определяемую пользователем функцию, которая в качестве аргумента принимает значение температуры по Цельсию и возвращает...
Ошибка при присваивании массиву char значения C++
В общем, требуется присвоить массиву чаров одно из нескольких значений (в зависимости от значения аргумента функции) и вывести этот массив из функции. Ошибка компилятора на строках 13 и 14: error...
C++ сортировка хоара http://www.cyberforum.ru/cpp-beginners/thread935268.html
void QuickSort(int* const a, int low, int N) { int i = low, j = N; int temp, p; p = a; do { while (a < p) i++; while (a > p) j--; if (i <=...
C++ Не загружаются символы Программа (любая) после отладки либо не запускается, либо запускается, но все с одним результатом - в окне "Вывод" внизу пишет вот это: "Проект2.exe" (Win32). Загружено... подробнее

Показать сообщение отдельно
Erjay
0 / 0 / 0
Регистрация: 03.08.2013
Сообщений: 91

Чтение из файла только букв и знаков препинания - C++

08.08.2013, 16:28. Просмотров 1026. Ответов 13
Метки (Все метки)

Задание из книги Либерти и Джонса (17.4):
"Напишите программу, получающую имя файла в качестве аргумента командной строки и открываюющую его для чтения. Считайте все символы файла по одному и выведите на экран только те из них, которые представляют собой буквы и знаки препинания. (Игнорируйте все непечатаемые символы.) Закройте файл перед завершением работы программы."

Листинг из "Ответы" (сам не сумел написать):
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
#include "stdafx.h"
#include <fstream>
#include <iostream>
using namespace std;
 
int _tmain(int argc, char** argv)
{
    if (argc != 2)
    {
        cout << "Usage: argv[0] <infile>\n";
        return (1);
    }
 
    ifstream fin (argv[1], ios::binary);
    if (!fin)
    {
        cout << "Unable to open " << argv[1] << " for reading.\n";
        return (1);
    }
 
    char ch;
    while (fin.get(ch))
    {
        if ((ch > 32 && ch << 127) || ch == '\n' || ch == '\t')
            cout << ch;
    }
    fin.close();
    return 0;
}
Вопросы:
1) Как правильно запустить программу? Пока что добился результата: "Usage: argv[0] <infile>" (см. Миниатюры).
2) Условие: "Считайте все символы файла...". Какие символы, ведь, в файле нет же ничего?
3) Каким образом 24-ая и 25-ая строки выводят на экран только те символы, "которые представляют собой буквы и знаки препинания"? Пожалуйста, объясните 24 строку.
4) Почему Либерти написал условие argc != 2 в 8-ой строке? Ведь, аргумент же один (имя файла)!
5) Для чего использовать ios::binary (14-ая строка)?
0
Миниатюры
Чтение из файла только букв и знаков препинания  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.