Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

error C2660: fopen_s: функция не принимает * аргументов

87K
11 июня 2013 года
tequiero
5 / / 11.06.2013
Код:
#include <iostream>
#include <stdio.h>
double dt;
double room_t;
double tmax;
double t;
double t0;
double T;
double T0;
double r;
int n;
FILE * f;

void init_func (void)
{
    n=15;
}
void init_r (void) {
    double line;
    f=fopen_s("in.txt","r"); //считываем данные, т.к. при переоткрытии данных программа будет считать с самого начала снова
    fscanf(f, "%lf", &t0); //начальное время
    fscanf(f, "%lf", &room_t); //температура комнаты
    fscanf(f, "%lf", &dt); //шаг по времени
    fscanf(f, "%lf", &tmax); //длительность эксперимента
    fscanf(f, "%lf", &T0); //начальная температура тела
    for (int i=2; i <= 15; i++) { //обработываем данные об остывании
        fscanf(f, "%lf", &line);
        r = r + (-1)*((line-T0)/((i-t0)*(line-room_t)));
    }
    r=r/15;
    fprintf(f, "%.3f \n", r); //выводим коэффициент остывания в файл
    printf("%.3f \n", r); //выводим коэффициент остывания в консоль
    fclose(f); //закрываем файл
}

int main()
{
 init_func (); //Инициализируем начальные значения
 init_r(); //Считываем данные из файла
 T=T0;
 t=t0;
 FILE* f=fopen_s ("out.txt","w"); //открываем файл для записи
 fprintf (f, "%5.3f\n", r);
 double Change_T = 0.0; //изменение функции
 for (int i=1; i <= n+1; i++)
 {
 Change_T=(-1)*(r*(T-room_t)*(dt)); //считаем
 //Change_T=room_t+(T-room_t)*pow(e,(-1*(r*t)));
 //вывод в файл и на консоль
 fprintf(f, "%02d %4.2f %4.2f %4.2f\n",i, t, T, T+Change_T);
 printf("%02d %4.2f %4.2f %4.2f\n",i, t, T, T+Change_T);
 T=T+Change_T;
 t=t+dt;
 }
 fclose (f);
 system("pause");
 }
При построении выдается ошибка:
Цитата:
1>d:\documents - roman\documents\visual studio 2012\projects\consoleapplication2\consoleapplication2\исходный код1.cpp(20): error C2660: fopen_s: функция не принимает 2 аргументов
1>d:\documents - roman\documents\visual studio 2012\projects\consoleapplication2\consoleapplication2\исходный код1.cpp(42): error C2660: fopen_s: функция не принимает 2 аргументов



Подскажите пожалуйста, в чем проблема, я вообще в C++ дуб дубом, в интернете не нашел решения.
Спасибо.

326
12 июня 2013 года
sadovoya
757 / / 19.11.2005
f вы и так предаете в параметрах. А возвращаемое значение код ошибки. Пишите просто fopen_s(&f, "in.txt","r") без f=...

Ноль эта ф-ция возвращает, если все хорошо. Обычно пишут так:
if(fopen_s(&f, "in.txt","r") ==0){//что-то делаем} иначе обрабатываем ошибку.
326
12 июня 2013 года
sadovoya
757 / / 19.11.2005
Ей надо 3 аргумента - см. тут.
87K
12 июня 2013 года
tequiero
5 / / 11.06.2013
Цитата: sadovoya
Ей надо 3 аргумента - см. тут.


изменил

 
Код:
20. f=fopen_s(&f, "in.txt","r")
42. FILE* f=fopen_s (&f, "out.txt","w")
теперь пишет
Цитата:
1>d:\documents - roman\documents\visual studio 2012\projects\consoleapplication2\consoleapplication2\исходный код1.cpp(20): error C2440: =: невозможно преобразовать "errno_t" в "FILE *"
1> Для преобразования из целого типа в указатель требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
1>d:\documents - roman\documents\visual studio 2012\projects\consoleapplication2\consoleapplication2\исходный код1.cpp(42): error C2440: инициализация: невозможно преобразовать "errno_t" в "FILE *"
1> Для преобразования из целого типа в указатель требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции


что не так? точнее как это поправить?

87K
12 июня 2013 года
tequiero
5 / / 11.06.2013
Цитата: sadovoya
f вы и так предаете в параметрах. А возвращаемое значение код ошибки. Пишите просто fopen_s(&f, "in.txt","r") без f=...

Ноль эта ф-ция возвращает, если все хорошо. Обычно пишут так:
if(fopen_s(&f, "in.txt","r") ==0){//что-то делаем} иначе обрабатываем ошибку.



спасибо огромное

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог