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

Не находит freopen - C++

Восстановить пароль Регистрация
 
Radzhab
12 / 12 / 0
Регистрация: 18.06.2011
Сообщений: 401
22.11.2012, 10:39     Не находит freopen #1
Кусок кода из программы
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
nt main () {
    freopen("theatre.in", "r", stdin);
    freopen("theatre.out", "w", stdout);
    std::ios_base::sync_with_stdio(false);
    size_t n, m;
    std::cin >> n >> m;
    assert(n <= 100 && m <= 100);
    UserClassificator classificator(n);
    size_t sumK = 0;
    for(size_t step = 0; step < m; ++step) {
        size_t k;
        std::cin >> k;
        sumK += k;
        std::vector<size_t> users;
        users.reserve(k);
        for(size_t t = 0; t < k; ++t) {
            size_t user;
            std::cin >> user;
            users.push_back(user - 1);
        }
        classificator.addPerformance(users);
    }

C++
1
\day2\theatre\solutions\theatre_vg_easy.cpp|80|error: 'freopen' was not declared in this scope|
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2012, 10:39     Не находит freopen
Посмотрите здесь:

Не находит хедер. C++
Ошибок не находит, но не работает! C++
не находит фаил C++
C++ freopen
C++ не находит algorithm.h
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,399
22.11.2012, 11:28     Не находит freopen #2
А хедеры?
Dendendena
0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 11
22.11.2014, 17:26     Не находит freopen #3
MrGluck, помогите пожалуйста с кодом)какс делать так,чтобы данные считывались с текста и чтобы все выводилось в текством формате?вот сам код:
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
39
40
41
42
#include <iostream>
 
using namespace std;
 
struct computer_desktop {
    string cpu_type;
    int cpu_speed;
    int price;
    int hard_disk_capacity;
    string graphics_card_type;
};
 
void create_desktop() { 
                        freopen("filex.txt","r",stdin);
            cout << "Enter cpu type" << endl;
            cin >> a[n].cpu_type;
            cout << "Enter Price of computer" << endl;
            cin >> a[n].price;
            cout << "Enter Cpu speed of computer" << endl;
            cin >> a[n].cpu_speed;
            cout << "Enter hard disk capacity" << endl;
            cin >> a[n].hard_disk_capacity;
            cout << "Enter Graphics card type" << endl;
            cin >> a[n].graphics_card_type;
            n++;
}
 
int main() {
    while(true) {
        freopen("computers.txt", "r", stdin);
        char ch;
        cout << "Create new computer, enter 'c':" << endl;
if (ch == 'c') {
            cout<<"If you want to create desktop,enter d,if laptop enter l"<<endl;
            cin>>dh;
            if(dh=='d'){
                create_desktop();
            }
            else if(dh=='l'){
                    create_laptop();
                }
        }
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,399
22.11.2014, 17:35     Не находит freopen #4
Вы хотите считывать с файла как со стандартного потока?
Dendendena
0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 11
22.11.2014, 20:36     Не находит freopen #5
MrGluck, я только начала изучать с++,и ,к сожалению, не знаю что такое потокипросто нужно сделать так,чтобы не приходилось все время самой вводить данные о компьютерах и чтобы вся эта программа выводилась в файле,а не в компиляторе.Это все что нам сказал препод)

Добавлено через 9 минут
MrGluck, Он сказал,что нужно использовать freopen)
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,399
22.11.2014, 22:07     Не находит freopen #6
Для таких целей обычно используют fstream.
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
#include <fstream>
#include <iostream>
#include <string>
 
using namespace std;
 
struct computer_desktop {
    string cpu_type;
    string graphics_card_type;
};
 
computer_desktop create_desktop(std::istream &input)
{
    computer_desktop obj;
    input >> obj.cpu_type >> obj.graphics_card_type;
    return obj;
}
 
int main()
{
    std::ifstream input_desktop("desktop.txt");
    std::ifstream input_laptop("laptop.txt");
    if (!input_desctop || !input_laptop)
        return 1;
 
    computer_desktop cd = create_desktop(input_desktop);
}
Yandex
Объявления
22.11.2014, 22:07     Не находит freopen
Ответ Создать тему
Опции темы

Текущее время: 01:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru