Differenze tra le versioni di "Fopen ()"
Da Gambas-it.org - Wikipedia.
(6 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 1: | Riga 1: | ||
La funzione della libreria di C | La funzione della libreria di C | ||
− | FILE *fopen (const char *__filename, const char *__modes) | + | FILE *fopen (const char *__restrict __filename, const char *__restrict __modes) |
− | apre il file '' | + | apre il file ''__filename'' associandolo ad uno ''stream'', e predisponendolo per le operazioni di ''input'' ed ''output'' come indicato da ''__modes''. |
Volendola utilizzare in Gambas, bisognerà dichiararla con ''Extern'', nonché bisognerà dichiarare la libreria di C: ''libc.so.6'', nella quale la funzione è contenuta: | Volendola utilizzare in Gambas, bisognerà dichiararla con ''Extern'', nonché bisognerà dichiarare la libreria di C: ''libc.so.6'', nella quale la funzione è contenuta: | ||
− | Private <FONT color=#B22222>Extern fopen</font>( | + | Private <FONT color=#B22222>Extern fopen</font>(__filename As String, __modes As String) As Pointer In "libc:6" |
In caso di fallimento viene ritornato NULL. | In caso di fallimento viene ritornato NULL. | ||
− | |||
Semplice esempio uso in Gambas: | Semplice esempio uso in Gambas: | ||
− | <FONT color=gray>' ''FILE *fopen (const char *__filename, const char *__modes)'' | + | Library "libc:6" |
+ | |||
+ | <FONT color=gray>' ''FILE *fopen (const char *__restrict __filename, const char *__restrict __modes)'' | ||
' ''Open a file and create a new stream for it.''</font> | ' ''Open a file and create a new stream for it.''</font> | ||
− | Private Extern <FONT color=#B22222>fopen</font>( | + | Private Extern <FONT color=#B22222>fopen</font>(__filename As String, __modes As String) As Pointer |
+ | <FONT Color=gray>' ''int fclose (FILE *__stream)'' | ||
+ | ' ''Close STREAM.''</font> | ||
+ | Private Extern fclose(__stream As Pointer) As Integer | ||
− | + | ||
+ | Public Sub Main() | ||
Dim p As Pointer | Dim p As Pointer | ||
<FONT color=gray>' ''Apriamo un file di testo in lettura:''</font> | <FONT color=gray>' ''Apriamo un file di testo in lettura:''</font> | ||
− | p = fopen("''/percorso/del/file/da/aprire''", "r") | + | p = <FONT color=#B22222>fopen</font>("<FONT color=gray>''/percorso/del/file/da/aprire''</font>", "r") |
− | + | ||
+ | ...<FONT color=gray>''Fa qualcosa''</font>... | ||
...... | ...... | ||
− | + | ||
− | ''' | + | <FONT color=gray>' ''Al termine è necessario chiudere il file precedentemente aperto:''</font> |
+ | fclose(p) | ||
+ | |||
+ | End |
Versione attuale delle 09:37, 2 lug 2023
La funzione della libreria di C
FILE *fopen (const char *__restrict __filename, const char *__restrict __modes)
apre il file __filename associandolo ad uno stream, e predisponendolo per le operazioni di input ed output come indicato da __modes.
Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché bisognerà dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta:
Private Extern fopen(__filename As String, __modes As String) As Pointer In "libc:6"
In caso di fallimento viene ritornato NULL.
Semplice esempio uso in Gambas:
Library "libc:6" ' FILE *fopen (const char *__restrict __filename, const char *__restrict __modes) ' Open a file and create a new stream for it. Private Extern fopen(__filename As String, __modes As String) As Pointer ' int fclose (FILE *__stream) ' Close STREAM. Private Extern fclose(__stream As Pointer) As Integer Public Sub Main() Dim p As Pointer ' Apriamo un file di testo in lettura: p = fopen("/percorso/del/file/da/aprire", "r") ...Fa qualcosa... ...... ' Al termine è necessario chiudere il file precedentemente aperto: fclose(p) End