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

fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *' - C++

Восстановить пароль Регистрация
 
Mugeens
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 15
16.01.2014, 23:23     fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *' #1
Организовываю файл данных со структурой, и выдает такую ошибку
C++
1
еrror C2664: fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *' Типы, на которые указывают указатели, не связаны; для преобразования требуется reinterpret_cast, приведение в стиле С или приведение в стиле функции
Помогите пожалуйста. Очень нужно.
Вот сам код:
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
#include "stdafx.h"
#include <stdio.h>
 
#define N 40
 
typedef struct tag_tovar{
    char name[N];
    char type[N];
    char sort[N];
    int quantity;
    double cost;
}ttovar;
 
 
int main(void)
{
    char fileName[N];
    FILE *out;
    ttovar s;
    int a, n=0;
    printf("Nime of file: ");
    fgets(fileName, N, stdin);
    out=fopen(fileName, "w");
    do{
        printf("Name of product: ");
        fscanf(s.name, N, stdin);
        printf("\nUnits mesure of product: ");
        fscanf(s.type, N, stdin);
        printf("\nSort of product: ");
        fscanf(s.sort, N, stdin);
        printf("\nNumber and price of product: ");
        scanf("%d %lf", &(s.quantity), &(s.cost));
        printf("\nContinue (1-yes, 0-no)? ");
        scanf("%d", &a);
    }while(a==0);
    fclose(out);
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2014, 23:23     fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *'
Посмотрите здесь:

Невозможно преобразовать параметр 1 из 'const char [15]' в 'LPCWSTR' C++
Ошибка 6 error C2664: strtok: невозможно преобразовать параметр 1 из "const char *" в "char *" C++
невозможно преобразовать параметр 1 из "const char [8]" в "LPCWSTR" C++
error C2664: strcmp: невозможно преобразовать параметр 1 из "char (*)[20]" в "const char *" C++
невозможно преобразовать параметр 1 из 'char' в 'const char *' C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
knf
16 / 16 / 2
Регистрация: 18.09.2012
Сообщений: 184
16.01.2014, 23:24     fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *' #2
Mugeens, Может код скинешь?)
Mugeens
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 15
16.01.2014, 23:26  [ТС]     fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *' #3
Зделано. Ошибки в поля 26, 28, 30.
skident
23 / 23 / 2
Регистрация: 11.12.2011
Сообщений: 300
16.01.2014, 23:30     fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *' #4
первым параметром fscanf должен быть хандл открытого файла.

http://lord-n.narod.ru/download/book.../13/fscanf.htm
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
16.01.2014, 23:30     fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *' #5
Mugeens,
Цитата Сообщение от Mugeens Посмотреть сообщение
fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *'
Все очевидно же написано. Первый параметр должен быть типа FILE, а не char[]
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
16.01.2014, 23:31     fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *' #6
C++
1
fscanf(stdin, "%s", s.name);
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.01.2014, 23:35     fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *'
Еще ссылки по теме:

C++ Невозможно преобразовать параметр из int в const char
C++ Fopen: невозможно преобразовать параметр 1 из 'LPWSTR' в 'const char *'
C++ Невозможно преобразовать параметр 2 из "char" в "const char *"

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

Или воспользуйтесь поиском по форуму:
Mugeens
0 / 0 / 0
Регистрация: 16.01.2014
Сообщений: 15
16.01.2014, 23:35  [ТС]     fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *' #7
Всем спасибо, ошибка пропала)) Хотя появилась новая проблема, но я попробую уже сам решить))
Yandex
Объявления
16.01.2014, 23:35     fscanf: невозможно преобразовать параметр 1 из 'char [40]' в 'FILE *'
Ответ Создать тему
Опции темы

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