Не работает вывод в файл в Visual studio 2019

224
03 ноября 2021, 04:30
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
struct book {
    char title[15];
    char author[15];
    int value;
};
int main() {
    setlocale(LC_ALL, "rus");
    int n;
    FILE* fp;
    fp = fopen("my.txt", "w");
    cout << "Vvedite kol-vo knig: ";
    cin >> n;
    book* libry = new book[n];
    for (int i = 0; i < n; i++) {
        cout << "Vvedite nazvanie knigi: ";
        cin >> libry[i].title;
        cout << "Vvedite nazvaniya authora: ";
        cin >> libry[i].author;
        cout << "Vvedite zeny knigi: ";
        cin >> libry[i].value;
        cout << endl;
    }
    for (int i = 0; i < n; i++) {
        cout << "nazvaniya: " << libry[i].title << endl;
        fprintf(fp, "%d\n",libry[i].title);
        cout << "author: " << libry[i].author << endl;
        fprintf(fp,"%d\n", libry[i].author);
        cout << "zena: " << libry[i].value << endl;
        fprintf(fp,"%d\n", libry[i].value);
        cout << endl;
    }
    fclose(fp);
    system("pause");
    return 0;
}

Я пробовал запускать в visual 2019 но он не выводит в файл, я попробовал запустить в visual 2010 и dev cpp но там выводились цифры которые не как не относятся к программе. Из за чего это может быть? Только начал изучить структуры до этого делал массивы и их выводило.

Answer 1

Вы понимаете, для чего %d в строке

fprintf(fp,"%d\n", libry[i].author);

? Для вывода целых чисел. Для вывода строк используется %s, отдельных символов - %c и так далее.

Но зачем вы вообще используете в C++ функции из C?

Пишете

ofstream fp("my.txt");

и просто дублируете вывод в cout:

cout << "author: " << libry[i].author << endl;
fp << "author: " << libry[i].author << endl;
READ ALSO
маска для input

маска для input

есть скрипт для поля email, и при наведении на него курсора появляется маска такого вида _@__, как эту маску по умолчанию поставить, и не нужно...

77
Вывод информации между страницами javascript

Вывод информации между страницами javascript

При нажатии кнопки на первой странице нужно вывести информацию в тег (P) на вторую страницу хотел сделать это через innerHTML но код срабатывает...

277