Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/54: Рейтинг темы: голосов - 54, средняя оценка - 4.69
230 / 60 / 17
Регистрация: 11.03.2010
Сообщений: 294
1

fopen_s

14.04.2010, 12:29. Показов 9870. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
рушил свой архив переделать: вместо ReadFile решил использовать fread
так вот возникла такая вот проблемка...
делаю проверку на существование выходного файла:
C++
1
2
3
4
if (fopen_s(&stream2, oFile, "w") != 0)
{
    return -1;
}
почему-то он срабатывает
хотя файл там есть...
oFile я обнулил через memset()
потом я ввожу имя файла посредством cin >> oFile
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.04.2010, 12:29
Ответы с готовыми решениями:

Ошибка в fopen_s
Не знаю что нужно добавить в fopen_s чтобы программа заработала #include "stdlib.h" #include...

Пример переделки кода fopen -> fopen_s
Есть к примеру такой код: FILE *file = fopen(filename, "rb"); Нужно поменять его с применением...

Fopen_s: код ошибки 2, файл не открывается
Код следующий: FILE* outputFile; char FilePath = "C:\\Users\\Екатерина\\Documents\\RAD...

Не понимаю, как открыть файл используя fopen_s
Проблема конкретно в 22 строчке кода. как только её комменчу, ошибка пропадает. void show() { ...

9
бжни
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
14.04.2010, 16:56 2
"w" если файла несуществует создает новый же
0
230 / 60 / 17
Регистрация: 11.03.2010
Сообщений: 294
15.04.2010, 09:38  [ТС] 3
в том-то и дело, что он существует...
он почему-то не видит что ли его...
вот есть схожая конструкция:
C++
1
2
3
4
5
if (fopen_s(&stream, iFile, "r") == 0)
{
    bytes = fread(massiv, sizeof(char), 4, stream);
    bytes = fread(massiv, sizeof(char), STEP, stream);
}
он сюда не заходит !
0
Evg
Эксперт CАвтор FAQ
21280 / 8302 / 637
Регистрация: 30.03.2009
Сообщений: 22,659
Записей в блоге: 30
15.04.2010, 09:51 4
А что записано в stream?
0
230 / 60 / 17
Регистрация: 11.03.2010
Сообщений: 294
15.04.2010, 10:26  [ТС] 5
ничего...
он только объявлен:
C++
1
FILE * stream;
0
Evg
Эксперт CАвтор FAQ
21280 / 8302 / 637
Регистрация: 30.03.2009
Сообщений: 22,659
Записей в блоге: 30
15.04.2010, 10:29 6
Ой, я имел в виду в iFile (oFile)
0
230 / 60 / 17
Регистрация: 11.03.2010
Сообщений: 294
15.04.2010, 10:59  [ТС] 7
вот:
C++
1
2
3
4
char iFile[128];
memset(&iFile, NULL, sizeof(iFile));
cout << "Enter file name";
cin >> iFile;
0
Evg
Эксперт CАвтор FAQ
21280 / 8302 / 637
Регистрация: 30.03.2009
Сообщений: 22,659
Записей в блоге: 30
15.04.2010, 12:45 8
И что ты в качестве файла подаёшь? При этом надо не забывать, что если подаёшь имя файла с относительным путём, то надо точно знать, в каком каталоге запущена программа.

Перед вызовом fopen_s влепи печать:

C++
1
cout << "[" << iFile << "]\n";
Квадратные скобки - для контроля того, что где-то там в начале или в конце не оказалось пробелов
0
230 / 60 / 17
Регистрация: 11.03.2010
Сообщений: 294
15.04.2010, 13:15  [ТС] 9
всё правильно там, нету пробелов

для ReadFile такое имя удовлетворяло....
0
Evg
Эксперт CАвтор FAQ
21280 / 8302 / 637
Регистрация: 30.03.2009
Сообщений: 22,659
Записей в блоге: 30
15.04.2010, 15:15 10
Значит смотри код возврата (что вернула тебе функция fopen_s)
0
15.04.2010, 15:15
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.04.2010, 15:15
Помогаю со студенческими работами здесь

Напишите любую программу по чтению из файла, но что бы использовалось fopen_s, fscanf_s
Народ напишите любую программу по чтению из файла, но что бы использовалось fopen_s, fscanf_s

Ошибка "C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead"
error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To...

Ошибка компиляции "Error C2660 'fopen_s': function does not take 2 arguments"
#include&lt;stdio.h&gt; #include&lt;stdlib.h&gt; #include&lt;conio.h&gt; #include&lt;string.h&gt; struct meniu { char...

Исправить ошибку "C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead."
Добрый день! Помогите пожалуйста с программой. Программа запускается, но при компиляции выдает...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru