Differenze tra le versioni di "Ottenere la descrizione del tipo di errore dai file header "errno-base.h" e "errno.h""
Da Gambas-it.org - Wikipedia.
Riga 1: | Riga 1: | ||
− | Molte funzioni esterne in caso errore ritornano tipi di errore contenuti e descritti nei file header | + | Molte funzioni esterne in caso errore ritornano tipi di errore contenuti e descritti nei file header ''errno-base.h'' e ''errno.h''. |
Essendo tali file header sostanzialmente dei file di testo, è abbastanza agevole, volendo, estrarre da essi sulla base del valore di errore, ritornato dalla funzione esterna, la descrizione di questo presente nel file ''header''. | Essendo tali file header sostanzialmente dei file di testo, è abbastanza agevole, volendo, estrarre da essi sulla base del valore di errore, ritornato dalla funzione esterna, la descrizione di questo presente nel file ''header''. | ||
− | |||
Nell'esempio fingiamo di ricevere un errore rappresentato dal valore "9": | Nell'esempio fingiamo di ricevere un errore rappresentato dal valore "9": | ||
Riga 11: | Riga 10: | ||
<FONT Color=gray>' ''Fingiamo di ricevere l'errore numero 9:''</font> | <FONT Color=gray>' ''Fingiamo di ricevere l'errore numero 9:''</font> | ||
− | + | err = "9" | |
− | + | fl = Open "/usr/include/asm-generic/errno-base.h" | |
− | + | For Each s In fl.Lines | |
− | + | If s Like "* " & err & " *" Then Print "Errore n. "; err; ": "; Scan(s, "*/*/*")[1] | |
− | + | Next | |
− | + | fl.Close | |
− | + | fl = Open "/usr/include/asm-generic/errno.h" | |
− | + | For Each s In fl.Lines | |
− | + | If s Like "* " & err & " *" Then Print "Errore n. "; err; ": "; Scan(s, "*/*/*")[1] | |
− | + | Next | |
− | + | fl.Close | |
'''End''' | '''End''' |
Versione delle 15:53, 5 ott 2022
Molte funzioni esterne in caso errore ritornano tipi di errore contenuti e descritti nei file header errno-base.h e errno.h.
Essendo tali file header sostanzialmente dei file di testo, è abbastanza agevole, volendo, estrarre da essi sulla base del valore di errore, ritornato dalla funzione esterna, la descrizione di questo presente nel file header.
Nell'esempio fingiamo di ricevere un errore rappresentato dal valore "9":
Public Sub Main() Dim s, err As String Dim fl As File ' Fingiamo di ricevere l'errore numero 9: err = "9" fl = Open "/usr/include/asm-generic/errno-base.h" For Each s In fl.Lines If s Like "* " & err & " *" Then Print "Errore n. "; err; ": "; Scan(s, "*/*/*")[1] Next fl.Close fl = Open "/usr/include/asm-generic/errno.h" For Each s In fl.Lines If s Like "* " & err & " *" Then Print "Errore n. "; err; ": "; Scan(s, "*/*/*")[1] Next fl.Close End