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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.71
alkagolik
Заблокирован
#1

ofstream - C++

31.07.2011, 23:51. Просмотров 1754. Ответов 11
Метки нет (Все метки)

Линковка, компиляция без ошибок. При выполнении программы срабатывает условие, почему так? Если лепить файл с программой в директории, то все работает, а так нет.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <fstream>
 
bool DIGIT(int tmp);
 
int main()
{
     const char *filename = "/home/chertopolox/projects/temp";
     std::ofstream ofs(filename);
     if (!ofs.is_open()){
        std::cerr << "Error open file";
        return 1;
     }
     //for (int j=0; j<4096; ++j){
      //  if (DIGIT(j))  << ", " << j;
    //}
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.07.2011, 23:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос ofstream (C++):

ofstream - C++
доброго времени суток! Возникла такая проблема: У меня программа должна помещать данные о процессах и модулях в txt файл std::ofstream...

ofstream - C++
Привет всем! Народ помогите пожалуйста нубу) Как сделать так чтобы создовался файл с именем которое я наберу с клавиатуры... пытался...

Ofstream - C++
#include &lt;iostream&gt; #include &lt;fstream&gt; using namespace std; int main() { ofstream test(&quot;C:\Program Files...

FILE* и ofstream - C++
Здравствуйте. Была поставлена предо мной задача: Сделать структуру, которая через меню будет выполнять некоторые действия с файлами....

ifstream ofstream - C++
как работают данные файловые операции, объясните пожалуйста куда происходит запись ена жёстком диске

Ofstream and ostream - C++
Как мне определить одну переменную для обоих потоков ? т .ею есть ффункция void Show(??? &amp;out) { out &lt;&lt; &quot; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
niXman
Эксперт C++
3135 / 1447 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
31.07.2011, 23:55 #2
Цитата Сообщение от alkagolik Посмотреть сообщение
/home/chertopolox/projects/temp
это кто?

Добавлено через 25 секунд
Цитата Сообщение от alkagolik Посмотреть сообщение
лепить файл
что это означает?
0
alkagolik
Заблокирован
01.08.2011, 00:28  [ТС] #3
/home/chertopolox/projects/temp

Это текстовый файл в который должен записываться поток

Лепить файл, означает создать файл в одной директории с бинарником. Прошу прощения за неясности.
0
niXman
Эксперт C++
3135 / 1447 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
01.08.2011, 00:40 #4
Цитата Сообщение от alkagolik Посмотреть сообщение
std::ofstream ofs(filename);
после этой строки добавь:
C++
1
std::cout << "error: " << strerror(errno) << std::endl;
а то я не уверен что мы понимаем друг-друга...
0
alkagolik
Заблокирован
01.08.2011, 01:02  [ТС] #5
Что-то я не догоняю. Я пишу в codeBlocks, обновил ядро, наверное надо гуй снова поставить. сейчас подключил errno.h
Ответ: undeclared strerror
Сейчас перезагружусь, поставлю гуй снова посмотрю.

Добавлено через 8 минут
ошибка линковки
error: ‘strerror’ was not declared in this scope|
0
niXman
Эксперт C++
3135 / 1447 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
01.08.2011, 01:03 #6
#include <string.h>
1
alkagolik
Заблокирован
01.08.2011, 01:07  [ТС] #7
Error: No such file or directory
Ну да, потерял директорию по пути. Извиняюсь за бескпокойство.
0
niXman
Эксперт C++
3135 / 1447 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
01.08.2011, 01:16 #8
Цитата Сообщение от alkagolik Посмотреть сообщение
Error: No such file or directory
какая ОС? какой компилятор?

Добавлено через 23 секунды
Цитата Сообщение от alkagolik Посмотреть сообщение
потерял директорию по пути.
собственно, так и ожидалось
0
alkagolik
Заблокирован
01.08.2011, 01:24  [ТС] #9
ubuntu, gcc 4.5
вся соль в том что путь пересмотрел стопицот раз, а так и не заметил.
0
niXman
Эксперт C++
3135 / 1447 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
01.08.2011, 01:26 #10
Цитата Сообщение от alkagolik Посмотреть сообщение
а так и не заметил
обычная ситуация. по этому привыкай использовать подобный прием
0
alkagolik
Заблокирован
01.08.2011, 01:47  [ТС] #11
по этому привыкай использовать подобный прием
Да как бэ привыкаем и так потихоньку. Загвоздка в том что изначально сел в с++, теперь смотрю что в никс без Си никак. Еще вопрос, но уже по другой теме. у меня gdb 7.2 не поддерживает pthreads, я где-то читал что он вообще с потоками не очень дружит, на что переориентироваться лучше?
0
diagon
Higher
1929 / 1195 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
01.08.2011, 13:05 #12
Цитата Сообщение от alkagolik Посмотреть сообщение
Загвоздка в том что изначально сел в с++, теперь смотрю что в никс без Си никак.
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
#include <iostream>
#include <boost/filesystem.hpp>
int main(){
    namespace fs = boost::filesystem;
    std::cout << "Enter path of file\n";
    fs::path file;
    std::cin >> file;
    try
    {
        if (!fs::exists(file))
        {
            std::cerr << "File not found!\n";
            return 1;
        }
        if (fs::is_directory(file))
        {
            std::cerr << "It's directory!\n";
            return 1;
        }
        else if (!fs::is_regular_file(file))
        {
            std::cerr << "It's not file!\n";
            return 1;
        }
        else
        {
            std::cout << "Size of \"" << file.filename() << "\" is "
                          << fs::file_size(file)
                          << " bytes\n";
        }
    }
    //если лень писать if'ы
        catch(const fs::filesystem_error& ex)
    {
        std::cerr << ex.what() << std::endl;
        return 1;
    }
    return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.08.2011, 13:05
Привет! Вот еще темы с ответами:

Передача ofstream в функцию - C++
Здравствуйте. Подскажите, пожалуйста, как сделать из участка с 54 по 62 строку отдельную функцию (также с 64 по 73, с 75 по 85, с 87 по...

Перегрузка ifstream и ofstream? - C++
Есть класс //test.h cass test { private: int i; string st; public:

Наследование от ofstream и перегрузка << - C++
Добрый день, гуглил на английском языке, но ответа не попалось. Предыстория: некий объекта принимает в качестве параметра ссылку на...

ifstream/ofstream/fstream - C++
#include &lt;fstream&gt; fstream autosave; autosave.open(&quot;...autosave.txt&quot;); char x; autosave &lt;&lt; x; cout &gt;&gt;...


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

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

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