source of highlighter
plain | download
    1 // kompilacia: gcc -o priklad6 priklad6.c
    2 
    3 #include <stdio.h>
    4 #include <stdlib.h>
    5 #include <fcntl.h>
    6 #include <errno.h>
    7 
    8 int main () {
    9         int fd;
   10         FILE * fp;
   11 
   12         fd = open("foo", O_WRONLY | O_CREAT, 0644);
   13         if (fd < 0) {
   14                 perror("foo");
   15                 exit(EXIT_FAILURE);
   16         }
   17         write(fd, "prvy riadok\n", 12);
   18 
   19         fp = fdopen(fd, "w");
   20 
   21         fd = -1000; // teraz uz mozme zabudnut hodnotu fd
   22 
   23         if (!fp) {
   24                 perror("foo");
   25                 exit(EXIT_FAILURE);
   26         }
   27         fprintf(fp, "druhy riadok\n");
   28         fflush(fp);
   29 
   30         fd = fileno(fp); // naspat ziskame hodnotu fd
   31         if (fd < 0) {
   32                 perror("fileno");
   33                 exit(EXIT_FAILURE);
   34         }
   35         write(fd, "treti riadok\n", 13);
   36         close(fd);
   37 
   38         exit(EXIT_SUCCESS);
   39 }
   40