Differenze tra le versioni di "Ttyname ()"
Da Gambas-it.org - Wikipedia.
(Una versione intermedia di uno stesso utente non è mostrata) | |||
Riga 1: | Riga 1: | ||
− | La funzione '''ttyname()''', dichiarata nel file header "''/usr/include/unistd.h''": | + | La funzione '''ttyname()''', dichiarata nel file header "''/usr/include/unistd.h'' ": |
char *ttyname (int __fd) | char *ttyname (int __fd) | ||
− | restituisce il percorso del file-device pseudoterminale (''pts'') associato al ''file descriptor'' indicato nel suo | + | restituisce il percorso del file-device pseudoterminale (''pts'') associato al ''file descriptor'' indicato nel suo unico parametro. |
− | |||
Volendola utilizzare direttamente in Gambas, bisognerà dichiararla con ''Extern'', nonché dichiarare la libreria di C: ''libc.so.6'', nella quale la funzione è contenuta: | Volendola utilizzare direttamente in Gambas, bisognerà dichiararla con ''Extern'', nonché dichiarare la libreria di C: ''libc.so.6'', nella quale la funzione è contenuta: | ||
Riga 17: | Riga 16: | ||
− | + | Public Sub Main() | |
Dim percorso As String | Dim percorso As String | ||
Dim fl As File | Dim fl As File | ||
− | + | percorso = <FONT Color=#B22222>ttyname</font>(STDOUT) | |
<FONT Color=gray>' ''Mostra il percorso dello pseudoterminale associato al file-descriptor passato:''</font> | <FONT Color=gray>' ''Mostra il percorso dello pseudoterminale associato al file-descriptor passato:''</font> | ||
− | + | Print percorso | |
<FONT Color=gray>' ''Usa il percorso dello pseudoterminale per scrivervi una stringa:''</font> | <FONT Color=gray>' ''Usa il percorso dello pseudoterminale per scrivervi una stringa:''</font> | ||
− | + | fl = Open percorso For Write | |
− | + | Write #fl, "\nTesto qualsiasi" | |
− | + | fl.Close | |
− | + | End | |
− | |||
Versione attuale delle 11:01, 13 giu 2024
La funzione ttyname(), dichiarata nel file header "/usr/include/unistd.h ":
char *ttyname (int __fd)
restituisce il percorso del file-device pseudoterminale (pts) associato al file descriptor indicato nel suo unico parametro.
Volendola utilizzare direttamente in Gambas, bisognerà dichiararla con Extern, nonché dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta:
Private Extern ttyname(__fd As Integer) As String In "libc:6"
Mostriamo un esempio di uso in Gambas:
Library "libc:6" Private Enum STDIN = 0, STDOUT, STDERR ' char *ttyname (int __fd) ' Return the pathname of the terminal FD is open on, or NULL on errors. Private Extern ttyname(id As Integer) As String In "libc:6" Public Sub Main() Dim percorso As String Dim fl As File percorso = ttyname(STDOUT) ' Mostra il percorso dello pseudoterminale associato al file-descriptor passato: Print percorso ' Usa il percorso dello pseudoterminale per scrivervi una stringa: fl = Open percorso For Write Write #fl, "\nTesto qualsiasi" fl.Close End