« il: 05 Settembre 2017, 23:05:53 »
A parte la funzione "
Val( ) " avete un codice più
fino del seguente:
Public Sub Main()
Dim s As String
Dim bb As Byte[]
Dim b As Byte
Dim sg As Short = 1
Dim i As Integer
s = " -123456 "
bb = Byte[].FromString(s)
For b = 0 To bb.Max
If Not IsSpace(Chr(bb[b])) Then ' Salta gli eventuali spazi iniziali e finali
If bb[b] = Asc("-") Then sg = -1 ' Verifica se il numero è segnato
If bb[b] < 48 Then Inc b ' Se è segnato, incrementa "b"
i = 10 * i + (bb[b] - Asc("0")) ' Ricava il valore numerico corrispondente al numero stringa
Endif
Next
Print sg * i
End
per convertire un numero segnato di tipo stringa nel corrispondente valore numerico aritmetico (esempio: Intero) ?
« Ultima modifica: 25 Settembre 2017, 20:05:09 da vuott »
Registrato
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »