Whole document tree 17. La glibLa glib fornisce molte funzioni e definizioni utili pronte all'uso quando si creano applicazioni GDK e GTK. Qui verranno elencate tutte, con una breve spiegazione. Molte sono duplicati delle funzioni standard della libc, e quindi per queste non si scenderà nei dettagli. Questa vuole essere una lista di riferimento, in modo che si sappia cosa è possibile usare.
17.1 DefinizioniLe definizioni per gli estremi di molti dei tipi standard sono:
Ci sono anche le seguenti definizioni di tipo. Quelle rimaste non specificate sono dipendenti dall'architettura. Si ricordi di evitare di fare affidamento sulla dimensione di un puntatore se si vuole la portabilità! P.e., un puntatore su un Alpha è lungo 8 byte, ma 4 su un Intel.
17.2 Liste a doppio collegamentole seguenti funzioni sono usate per creare, gestire e distruggere liste a doppio collegamento. Si assume che il lettore sappia già cosa sono le liste collegate (linked list), poiché descriverle è fuori dagli scopi di questo documento. Naturalmente non è necessario conoscerle per l'uso generale di GTK, per quanto conoscerle sia comunque interessante.
17.3 Liste a collegamento singoloMolte delle funzioni per le liste a collegamento singolo sono identiche alle precedenti. Eccone una lista completa:
17.4 Gestione della memoria
Questa è una sostituta di malloc(). Non occorre controllare il valore restituito, in quanto lo fa già questa funzione.
Come la precedente, ma la memoria viene azzerata prima di restituire un puntatore ad essa.
Riloca ``size'' byte di memoria che inizia a ``mem''. Ovviamente, la memoria dovrebbe essere stata allocata precedentemente.
Libera la memoria. Facile!
Emette un profilo della memoria usata, ma occorre ricompilare e reinstallare la libreria aggiungendo #define MEM_PROFILE all'inizio del file glib/gmem.c.
Controlla che una locazione di memoria sia valida. Occorre ricompilare e reinstallare la libreria aggiungendo #define MEM_CHECK all'inizio del file gmem.c.
17.5 TimerFunzioni legate ai timer...
17.6 Gestione delle stringheUn'accozzaglia di funzioni per la gestione delle stringhe. Sembrano tutte molto interessanti, e probabilmente migliori per molte caratteristiche delle funzioni standard del C per le stringhe, ma necessitano di documentazione.
17.7 Funzioni d'utilità e di errore
Funzione sostitutiva della strdup. Copia i contenuti originari delle stringhe in memoria appena allocata, restituendo un puntatore ad essa.
Si raccomanda di usare questa gunzione per tutti i messaggi di errore. E' molto
più graziosa, e più portabile di perror() o di altre. L'output di solito ha la
forma:
Di seguito un esempio di una chiamata di questo tipo usata nel nostro programma Hello World:
Visualizza un messaggio di errore. Il formato è come quello di printf, ma prepone ``** ERROR **: '' al messaggio e termina il programma. Da usare solo per errori gravi.
Come la precedente, ma prepone ``** WARNING **: '' e non termina il programma.
Visualizza ``message: '' e poi il messaggio.
Sostituta di printf(). L'ultima funzione:
Visualizza il nome del messaggio del sistema Unix associato al numero di segnale. Utile nelle funzioni generiche di gestione dei segnali. Tutte le funzioni elencate sono più o meno prese da glib.h. Se qualcuno volesse documentare qualche funzione, mandi una email all'autore!
Avanti Indietro Indice |