Правилино ли я делаю ввод? - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Прекращает работу когда читает fscanf_s.
struct complex_elem
{
    char D[9]; int k;
};
void main()
{
    complex_elem h;
    FILE *fs;
    fopen_s(&fs, "WORK.txt", "r");
    int f, i;
    fscanf_s(fs, "%9s, %d", h.D, &h.k);
}

Решение задачи: «Правилино ли я делаю ввод?»

textual
Листинг программы
#include <iostream>
#include <fstream>
#include <string>
 
struct complex_elem
{
    std::string D;
    int k;
};
 
int main()
{
    complex_elem h;
    std::ifstream in("WORK.txt");
    in >> h.D;
    in >> h.k;
    std::cout << h.D << " " << h.k << std::endl;
    return 0;
}

Объяснение кода листинга программы

  1. Включаем необходимые заголовочные файлы для работы с вводом/выводом и строками
  2. Объявляем структуру complex_elem, которая будет хранить данные из файла
  3. Открываем файл WORK.txt для чтения
  4. Считываем первые два поля из файла в переменные D и k структуры complex_elem
  5. Выводим значения полей D и k на экран
  6. Закрываем файл
  7. Возвращаем 0, чтобы указать, что программа успешно завершилась

Оцени полезность:

9   голосов , оценка 3.889 из 5
Похожие ответы