Differenze tra le versioni di "Strcpy ()"
Da Gambas-it.org - Wikipedia.
Riga 21: | Riga 21: | ||
s = "abcde fghil" | s = "abcde fghil" | ||
− | p = | + | p = Alloc(SizeOf(gb.Byte), Len(s)) |
− | <FONT Color=gray>' ''Copia nell'area di memoria, puntata dal Puntatore del 1° argomento, la stringa contenuta variabile del 2° argomento:''</font> | + | <FONT Color=gray>' ''Copia nell'area di memoria, puntata dal Puntatore del 1° argomento, la stringa contenuta nella variabile del 2° argomento:''</font> |
<FONT Color=#B22222>strcpy</font>(p, s) | <FONT Color=#B22222>strcpy</font>(p, s) | ||
<FONT Color=gray>' ''Per leggere la stringa, presente nell'area di memoria puntata dal Puntatore del 1° parametro, dereferenzia tale Puntatore:''</font> | <FONT Color=gray>' ''Per leggere la stringa, presente nell'area di memoria puntata dal Puntatore del 1° parametro, dereferenzia tale Puntatore:''</font> | ||
Print String@(p) | Print String@(p) | ||
− | + | ||
+ | Free(p) | ||
+ | |||
End | End | ||
Versione attuale delle 14:57, 16 giu 2024
La funzione strncpy( ), dichiarata nel file header di sistema "/usr/include/string.h"
char *strcpy (char *__restrict __dest, const char *__restrict __src)
copia nell'area di memoria puntata dal Puntatore __dest la stringa puntata dal Puntatore __src.
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 strcpy(__dest As Pointer, __src As Pointer) In "libc:6"
Mostriamo un semplice esempio:
Library "libc:6" ' char *strcpy (char *__restrict __dest, const char *__restrict __src) ' Copy SRC to DEST. Private Extern strcpy(__dest As Pointer, __src As String) Public Sub Main() Dim s As String Dim p As Pointer s = "abcde fghil" p = Alloc(SizeOf(gb.Byte), Len(s)) ' Copia nell'area di memoria, puntata dal Puntatore del 1° argomento, la stringa contenuta nella variabile del 2° argomento: strcpy(p, s) ' Per leggere la stringa, presente nell'area di memoria puntata dal Puntatore del 1° parametro, dereferenzia tale Puntatore: Print String@(p) Free(p) End