Helsingin yliopisto Tietojenkäsittelytieteen laitos
 

Tietojenkäsittelytieteen laitos

Tietoa laitoksesta:

 
Helsingin yliopisto / Tietojenkäsittelytieteen laitos / Copyright © 2001 Jan Lindström. Tämän oppimateriaalin käyttö on sallittu vain yksityishenkilöille opiskelutarkoituksissa. Materiaalin käyttö muihin tarkoituksiin, kuten kaupallisilla tai muilla kursseilla, on kielletty.

UNIX/LINUX-ohjelmointi


Sisällys: Linkkejä:

1 Virhetilanteiden käsittely

Koodissa tarkistettava kaikkien systeemikutsujen onnistuminen. Virhetilanteessa systeemikutsut ja kirjastofunktiot palauttavat yleensä arvon -1 tai NULL ja asettavat muuttujalle errno virheen numeron. Onnistunut systeemikutsu ei muuta muuttujaa errno. Numeroa vastaavan ilmoituksen saa funktiolla strerror(). Tulostuksen voi hoitaa funktiolla perror(), joka tulostaa parametrinsa, kaksoispisteen ja järjestelmän virheilmoituksen. Järjestelmän virhenumerot ja niihin samaistetut tunnukset löytyvät otsaketiedostosta /usr/include/sys/errno.h

#include < stdio.h >

int main(int argc, char *argv[])
{
    fprintf(stderr,"EACCES: " %s\n", 
            strerror(EACCES);

    errno = ENOENT;
    perror(argv[0]);                           /*ohjelman nimi. SUOSITELLAAN */

    exit(0);
}


Jan Lindström (Jan.Lindstrom@cs.Helsinki.FI)