Differenze tra le versioni di "Strncat ()"
Da Gambas-it.org - Wikipedia.
(Creata pagina con "La funzione '''''strncat( )''''', dichiarata nel file header di sistema "''/usr/include/string.h''" char *strncat (char *__restrict __dest, const char *__restrict __src, size...") |
|||
Riga 6: | Riga 6: | ||
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 strncat</font>(__dest As Pointer, __src As Pointer, __n As Long) In "<FONT color=#B22222>libc:6</font>" | Private <FONT color=#B22222>Extern strncat</font>(__dest As Pointer, __src As Pointer, __n As Long) In "<FONT color=#B22222>libc:6</font>" | ||
− | |||
− | |||
Mostriamo un semplice esempio: | Mostriamo un semplice esempio: | ||
Library "libc:6" | Library "libc:6" | ||
Riga 16: | Riga 14: | ||
− | + | Public Sub Main() | |
− | + | Dim p1, p2 As Pointer | |
p1 = Alloc("abcd") | p1 = Alloc("abcd") | ||
p2 = Alloc("1234") | p2 = Alloc("1234") | ||
− | <FONT Color=gray>' ''Aggiunge "dopo" i dati presenti nell'area di memoria, puntata dal Puntatore del 1° argomento, | + | <FONT Color=gray>' ''Aggiunge "dopo" i dati presenti nell'area di memoria, puntata dal Puntatore del 1° argomento, i soli primi 2 byte dell'area di memoria puntata dal Puntatore del 2° argomento.''</font> |
− | |||
<FONT Color=#B22222>strncat</font>(p1, p2, 2) | <FONT Color=#B22222>strncat</font>(p1, p2, 2) | ||
Riga 32: | Riga 29: | ||
Free(p1) | Free(p1) | ||
− | + | End | |
− | |||
Versione attuale delle 14:59, 16 giu 2024
La funzione strncat( ), dichiarata nel file header di sistema "/usr/include/string.h"
char *strncat (char *__restrict __dest, const char *__restrict __src, size_t __n)
aggiunge un numero __n di byte (cominciando comunque dal primo byte) dell'area di memoria puntata dal puntatore __src "dopo" i byte contenuti dall'area di memoria puntata dal Puntatore __dest. Concatena dunque due stringhe di dati.
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 strncat(__dest As Pointer, __src As Pointer, __n As Long) In "libc:6"
Mostriamo un semplice esempio:
Library "libc:6" ' char *strncat (char *__restrict __dest, const char *__restrict __src, size_t __n) ' Append no more than N characters from SRC onto DEST. Private Extern strncat(__dest As Pointer, __src As Pointer, __n As Long) Public Sub Main() Dim p1, p2 As Pointer p1 = Alloc("abcd") p2 = Alloc("1234") ' Aggiunge "dopo" i dati presenti nell'area di memoria, puntata dal Puntatore del 1° argomento, i soli primi 2 byte dell'area di memoria puntata dal Puntatore del 2° argomento. strncat(p1, p2, 2) Print String@(p1) Free(p2) Free(p1) End