Zápis do souboru v jazyce C

Z Milan Kerslager
Verze z 21. 4. 2009, 11:50, kterou vytvořil Milan.Kerslager (diskuse | příspěvky) (Fix)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Přejít na: navigace, hledání
#include <stdio.h>
#include <stdlib.h>

int chyba(int err, char *txt)
{
  printf("Chyba %d: %s\n", err, txt);
  exit(err);
}

int main(int argc, char *argv[])
{
  char *veta="Ahoj svete\n";
  FILE *vystup;

  if (argc != 2) {
    if ((vystup = fopen(argv[1], "a+")) == NULL) {
      chyba(1, "nelze otevrit pro zapis");
    }
  } else {
    chyba(2, "chybi parametr");
  }
  if (fputs(veta, vystup) == EOF) {
    chyba(3, "nelze zapsat");
  }
  return 0;
}

Cvičení

Příklad 1
Upravte program, aby při absenci parametru zapisoval na standardní výstup.
Příklad 2
Upravte program, aby pro hlášení chyby používal funkci perror().