Differenze tra le versioni di "Rimuovere tot caratteri da una stringa mediante le funzioni esterne del API di Libglib-2.0"

Da Gambas-it.org - Wikipedia.
(Creata pagina con 'E' possibile eliminare da una stringa un certo numero di caratteri, partendo da un determinato carattere presente nella stringa medesima, utilizzando alcune funzioni della lib...')
 
 
(4 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
 
E' possibile eliminare da una stringa un certo numero di caratteri, partendo da un determinato carattere presente nella stringa medesima, utilizzando alcune funzioni della libreria esterna ''libglib-2.0'' .
 
E' possibile eliminare da una stringa un certo numero di caratteri, partendo da un determinato carattere presente nella stringa medesima, utilizzando alcune funzioni della libreria esterna ''libglib-2.0'' .
  
Sarà necessario aver installato nel sistema e richiamare nell'applicazione Gambas la libreria: "''libglib-2.0.so''"
+
Sarà necessario aver installato nel sistema e richiamare nell'applicazione Gambas la libreria condivisa: "''libglib-2.0.so.0.7200.4'' ".
  
  
 
Mostriamo un esempio, nel quale verranno eliminati da una stringa 5 caratteri a partire dal 4° carattere della stringa medesima:
 
Mostriamo un esempio, nel quale verranno eliminati da una stringa 5 caratteri a partire dal 4° carattere della stringa medesima:
  Library "libglib-2.0"
+
  Library "libglib-2.0:0.7200.4"
 
   
 
   
 
  <FONT Color=gray>' ''GString * g_string_new (const gchar *init)''
 
  <FONT Color=gray>' ''GString * g_string_new (const gchar *init)''
Riga 24: Riga 24:
 
   Dim s As String
 
   Dim s As String
 
   Dim p1, p2 As Pointer
 
   Dim p1, p2 As Pointer
    
+
  s = "abcde fghilm nopqrstuvz"
+
   s = "abcde fghilm nopqrstuvz"
    
+
  p1 = g_string_new(s)
+
   p1 = g_string_new(s)
     
+
     
  p2 = g_string_erase(p1, 1, 5)
+
  p2 = g_string_erase(p1, 4, 5)
   
+
 
  Print String@(Pointer@(p2))
+
  Print String@(Pointer@(p2))
   
+
 
 
  <FONT Color=gray>' ''Va in chiusura liberando memoria occupata precedentemente dai due "Puntatori" utilizzati:''</font>
 
  <FONT Color=gray>' ''Va in chiusura liberando memoria occupata precedentemente dai due "Puntatori" utilizzati:''</font>
  g_string_free(p2, True)
+
  g_string_free(p2, True)
  g_string_free(p1, True)
+
  g_string_free(p1, True)
 
+
 
  '''End'''
 
  '''End'''
 +
 +
 +
 +
=Riferimenti=
 +
* https://docs.gtk.org/glib/method.String.erase.html

Versione attuale delle 08:23, 30 apr 2023

E' possibile eliminare da una stringa un certo numero di caratteri, partendo da un determinato carattere presente nella stringa medesima, utilizzando alcune funzioni della libreria esterna libglib-2.0 .

Sarà necessario aver installato nel sistema e richiamare nell'applicazione Gambas la libreria condivisa: "libglib-2.0.so.0.7200.4 ".


Mostriamo un esempio, nel quale verranno eliminati da una stringa 5 caratteri a partire dal 4° carattere della stringa medesima:

Library "libglib-2.0:0.7200.4"

' GString * g_string_new (const gchar *init)
' Creates a new GString, initialized with the given string.
Private Extern g_string_new(init As String) As Pointer

' GString * g_string_erase (GString *string, gssize pos, gssize len)
' Removes len bytes from a GString, starting at position pos.
Private Extern g_string_erase(GString As Pointer, gpos As Integer, glen As Integer) As Pointer

' gchar * g_string_free (GString *string, gboolean free_segment)
' Frees the memory allocated for the GString.
Private Extern g_string_free(GString As Pointer, free_segment As Boolean) As String


Public Sub Main()

 Dim s As String
 Dim p1, p2 As Pointer

 s = "abcde fghilm nopqrstuvz"

 p1 = g_string_new(s)
     
 p2 = g_string_erase(p1, 4, 5)
  
 Print String@(Pointer@(p2))
  
' Va in chiusura liberando memoria occupata precedentemente dai due "Puntatori" utilizzati:
 g_string_free(p2, True)
 g_string_free(p1, True)

End


Riferimenti