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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 232, средняя оценка - 4.65
prom1856
14 / 14 / 1
Регистрация: 22.09.2008
Сообщений: 46
#1

fopen() - C++

22.09.2008, 09:21. Просмотров 30341. Ответов 19
Метки нет (Все метки)

Win XP SP2, VS 2005
не могу понять, почему fopen() не работает? Просмотрел в поиске, на форумах - вроде все понятно, а не работает. В чем засада?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <stdio.h>
using namespace std;
 
void main(void)
{
 
    FILE* stream;    
    if((stream = fopen("c:\\aaa.txt","r")) == NULL)
    {
        cout << "file open" << "\n";
        return;
    }
    else
    {
        cout << "file don't open" << "\n";
    }
}
Сообщения билда надо привести?

Добавлено через 1 час 26 минут 23 секунды
А в таком варианте работает:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <stdio.h>
using namespace std;
 
void main(void)
{
    errno_t err;
    FILE* stream;    
    if((err = fopen_s(&stream,"c:\\aaa.txt","r")) != 0)
    {
        cout << "file don't open" << "\n";
        return;
    }
    else
    {
        cout << "file open" << "\n";
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2008, 09:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос fopen() (C++):

fopen - C++
Добрый день! Мне нужно было сохранить данные в текстовый файл. Для открытия файла я использовал функцию fopen. Программа скомпилировалась,...

FOPEN не то открывает - C++
помогите у меня FOPEN открывает файл It is an example using fseek and ftell functions, а не my_file.txt #include int main(void) { ...

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

fopen и fdopen - C++
Помогите, пожалуйста, разобраться. Есть код скрипта, выводит картинку в браузере, скачал с инета: // Результат работы скрипта -...

Fopen в vs 2013 - C++
Привет! разбирался с фалами, и пришел к тупику. Пожалуйста, подскажите, что не так. я всего-то хотел попробовать создать и открыть файл. ...

Fopen не создает файл - C++
Перешел на Visual Studio 2013, столкнулся с проблемой: взят обычный код из интернета, а файл не создается (windows поиск не находит) ...

19
assu
22 / 22 / 1
Регистрация: 29.08.2008
Сообщений: 138
22.09.2008, 10:14 #2
C++
1
2
3
4
5
6
7
8
FILE * pFile;
pFile = fopen ("C:\\myfile.txt","w");
if (pFile!=NULL)
{
fputs ("fopen example",pFile);
fclose (pFile);
Form1->Caption="File was created";
}
вот так все работает..
0
prom1856
14 / 14 / 1
Регистрация: 22.09.2008
Сообщений: 46
22.09.2008, 11:41  [ТС] #3
Спасибо, конечно. Но хоть сам-то проверял? При компиляции выдает ошибки и требует fopen_s().
0
Lord_Voodoo
Супер-модератор
8594 / 2211 / 61
Регистрация: 07.03.2007
Сообщений: 10,766
Завершенные тесты: 1
22.09.2008, 12:04 #4
а ты хидеры нужные прописал и вообще в чем ты пишешь прогу?
0
prom1856
14 / 14 / 1
Регистрация: 22.09.2008
Сообщений: 46
22.09.2008, 12:18  [ТС] #5
Да вот два прописал: iostream и stdio.h. А что ещё какие нужны?
Компиляторы: Visual Studio 2005 и ещё в Экпрессе попробывал. Одинаково отрицательный результат.
0
Lord_Voodoo
Супер-модератор
8594 / 2211 / 61
Регистрация: 07.03.2007
Сообщений: 10,766
Завершенные тесты: 1
22.09.2008, 12:33 #6
так я чего-то не пойму, ну сть в студии метод fopen_s, так чем он вас не устраивает или он файл не открывает, я что-то никак не пойму, в чем проблема...
0
prom1856
14 / 14 / 1
Регистрация: 22.09.2008
Сообщений: 46
22.09.2008, 12:47  [ТС] #7
Что непонятного? Метод fopen_s() работает и меня вполне устраивает.
Метод fopen() не работает. И мне бы очень хотелось знать или я его (fopen()) неправомерно в указанной среде разработки использую или что-то ещё?
По крайней мере прямого запрета не нашел, хотя рекомендации на безопасность есть.
0
Vourhey
Почетный модератор
6486 / 2260 / 123
Регистрация: 29.07.2006
Сообщений: 12,536
22.09.2008, 13:10 #8
prom1856, чувак, у тебя в опциях твоего проекта стоит "Treat warnings as errors". Сделай его "No".
0
Lord_Voodoo
Супер-модератор
8594 / 2211 / 61
Регистрация: 07.03.2007
Сообщений: 10,766
Завершенные тесты: 1
22.09.2008, 13:10 #9
есть подозрения, что в студии fopen лежит в другом хидере, например, надо хелп читать...
0
Vourhey
Почетный модератор
6486 / 2260 / 123
Регистрация: 29.07.2006
Сообщений: 12,536
22.09.2008, 13:14 #10
Да не, это из-за опций проекта. Все там норм. Просто warning по безопасности распознается как ошибка из-за той опции, что я выше привел.

Добавлено через 2 минуты 0 секунд
Она, кстати, находится на ветке C/C++ -> General
0
prom1856
14 / 14 / 1
Регистрация: 22.09.2008
Сообщений: 46
22.09.2008, 15:05  [ТС] #11
Yourhey, тут было какое-то оскорбление

WooDooMan, покопаю в этом направлении, в любом случае спасибо.
0
Vourhey
Почетный модератор
6486 / 2260 / 123
Регистрация: 29.07.2006
Сообщений: 12,536
22.09.2008, 15:24 #12
Цитата Сообщение от WooDooMan Посмотреть сообщение
есть подозрения, что в студии fopen лежит в другом хидере, например, надо хелп читать...
Это стандартный заголовочник. Он там всегда лежит (stdio). Если не там, то ошибка была бы не щ fopen_s, а о неизвестной функции. ИМХО.
0
Lord_Voodoo
Супер-модератор
8594 / 2211 / 61
Регистрация: 07.03.2007
Сообщений: 10,766
Завершенные тесты: 1
22.09.2008, 15:27 #13
а ошибки-то мы не видели, так что это была отфонарная версия, главная мысль - читаем хелп, там все написано, хоть и не по-русски))))
0
Vourhey
Почетный модератор
6486 / 2260 / 123
Регистрация: 29.07.2006
Сообщений: 12,536
22.09.2008, 15:30 #14
Да я че...я ниче
Requirements
Function Required header Compatibility
fopen
<stdio.h>
ANSI, Windows 95, Windows 98, Windows 98 Second Edition, Windows Millennium Edition, Windows NT 4.0, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003
официальный хэлп мелкомягких.
0
prom1856
14 / 14 / 1
Регистрация: 22.09.2008
Сообщений: 46
22.09.2008, 16:13  [ТС] #15
Нашел ошибку, хотя ошибкой это назвать нельзя. Нюансы есть небольшие.
Привет супер-пупер.
0
22.09.2008, 16:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.09.2008, 16:13
Привет! Вот еще темы с ответами:

Что-то не так с fopen - C++
Что компилятор хочить в fopen? Вот например что здесь не так? void WriteSum(double *pmatrix) { double **prow, *pnode; int k; ...

Выдается ошибка на fopen - C++
#include &lt;stdlib.h&gt; #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &quot;stdafx.h&quot; using namespace std; int main() { int...

Компилятор ругается на fopen - C++
#include&lt;iostream&gt; #include&lt;stdio.h&gt; #include &lt;string.h&gt; #define MAX 50 using namespace std; // Приоритет операций int...

fopen не открывает файл - C++
Файл существует, с нормальными атрибутами, не открыт... FILE *pFile = fopen(&quot;C:\\settings.txt&quot;, &quot;r&quot;); errno - 2 Почему файл не...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

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