Zápis do souboru v jazyce C: Porovnání verzí

Z Milan Kerslager
Přejít na: navigace, hledání
(Syntax on)
m (+kat)
Řádka 33: Řádka 33:
  
 
;Příklad 2: Upravte program, aby pro hlášení chyby používal funkci <code>perror()</code>.
 
;Příklad 2: Upravte program, aby pro hlášení chyby používal funkci <code>perror()</code>.
 +
 +
[[Kategorie:Jazyk C v Linuxu]]

Verze z 6. 4. 2009, 20:40

#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 != 1) {
    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().