Strpbrk ()
Vai alla navigazione
Vai alla ricerca
La funzione strpbrk(), dichiarata nel file header di sistema "/usr/include/string.h"
char *strpbrk (char *__s, const char *__accept)
restituisce un puntatore al carattere corrispondente più a sinistra nella stringa puntata da __s che corrisponde a qualsiasi carattere della stringa puntata da __accept . Se i caratteri presenti nella stringa, puntata dal 2° parametro __accept, sono presenti anche nella stringa, puntata dal 1° parametro __s, allora il carattere, di cui la funzione cercherà la prima occorrenza, sarà il primo carattere a sinistra nella stringa, puntata dal 2° parametro __accept .
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 strpbrk(__s As Pointer, __accept As String) As Pointer In "libc:6"
Mostriamo un semplice esempio:
Library "libc:6"
' char *strpbrk (char *__s, const char *__accept)
' Find the first occurrence in S of any character in ACCEPT.
Private Extern strpbrk(__s As Pointer, __accept As String) As Pointer
Public Sub Main()
Dim p1, p2 As Pointer
Dim s As String
p1 = Alloc("abcdefghil")
s = "dh"
' Individua nell'area di memoria puntata dal Puntatore "p1" la prima occorrenza del primo carattere presente nella variabile Stringa "s", restituendo - compreso il carattere di quella prima occorrenza - tutti i restanti caratteri della stringa contenuta in "s".
p2 = strpbrk(p1, s)
Print String@(p2)
Free(p1)
End