Ttyname ()

Da Gambas-it.org - Wikipedia.
Versione del 13 giu 2024 alle 12:01 di Vuott (Discussione | contributi)

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

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


Riferimenti