Atoi()
Da Gambas-it.org - Wikipedia.
Versione del 6 set 2014 alle 17:30 di Vuott (Discussione | contributi)
La funzione della libreria di C
int atoi(const char * str)
converte una stringa in un numero intero.
Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta:
Private Extern atoi(num As String) As Integer In "libc:6"
Semplice esempio di uso in Gambas:
' int atoi(const char * str) Private Extern atoi(num As String) As Integer In "libc:6" Public Sub Main() Dim s As String Dim i As Integer s = "2222" i = atoi(s) Print i End
Uso della funzione atoi() all'interno di una libreria esterna creata dall'utente
Se il programmatore vuole utilizzare la funzione atoi() all'interno di una libreria esterna specifica da lui creata, allora si potrà adottare il seguente codice.
La libreria esterna specifica, il cui file di codice sarà chiamato ad esempio libconv.c, può essere:
#include <string.h> int i; int converte(char * s) { i = atoi(s); return i; }
e verrà posta ad esempio nella cartella "Dati" dell'applicativo.
Il codice Gambas potrà essere:
Private Extern converte(num As String) As Integer In "/tmp/libconv" Public Sub Main() Dim s As String Dim i As Integer Shell "gcc -o /tmp/libconv.so " & Application.Path &/ "libconv.c -shared -fPIC" Wait s = "2222" i = converte(s) Print i End