Как ведут себя функции ввода вывода при работе с файлами - C (СИ)

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

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

Здравствуйте!!! прошу подсказки в отладке данного кода. цель его посмотреть наглядно как ведут себя функции ввода вывода при работе с файлами...
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#pragma warning (disable:4996)
 
int main()
{
    FILE *file;
    char str[25];
    char str1[25];
    if ((file = fopen("D:/testfile.txt", "w")) == NULL)
        puts("Error opening file");
    else
    {
        puts("*************************");
        scanf("%s",str);
        fprintf(file,"%s",str);
        fscanf(file,"%s",str1);
        printf("%s\n",str1);
        puts("*************************");
        gets(str);
        fputs(str,file);
        fgets(str, 25, file);
        puts(str1);
        puts("*************************");
        
    }

    getch(); 
}

Решение задачи: «Как ведут себя функции ввода вывода при работе с файлами»

textual
Листинг программы
if ((file = fopen("D:/testfile.txt", "w+")) == NULL)
        puts("Error opening file");
    else
    {
        puts("*************************");
        scanf("%s",str);
        printf("---%s\n",str); 
        fprintf(file,"%s",str);
        //freopen("testfile.txt","r+",file);
        //fclose(file);
        //file = fopen("D:/testfile.txt", "r");
        printf("---%s\n", str1);
        fscanf(file, "%s", str1);
        printf("***%s", str1);

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

  1. file = fopen(D:/testfile.txt,w+) - открывает файл D:/testfile.txt для чтения и записи, при этом очищает его содержимое. Если файл не может быть открыт, то выводится сообщение об ошибке.
  2. scanf(%s,str) - считывает строку из стандартного ввода и сохраняет ее в переменной str.
  3. printf(---%s\n,str) - выводит на экран строку из переменной str.
  4. fprintf(file,%s,str) - записывает строку из переменной str в файл.
  5. freopen(testfile.txt,r+,file) - пере открывает файл testfile.txt для чтения и записи.
  6. fclose(file) - закрывает файл.
  7. file = fopen(D:/testfile.txt,r) - открывает файл D:/testfile.txt только для чтения.
  8. fscanf(file,%s, str1) - считывает строку из файла и сохраняет ее в переменной str1.
  9. printf(***%s, str1) - выводит на экран строку из переменной str1.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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