Mi son perso leggendo il tuo post... :rolleyes:
Cmq, partiamo da un concetto: Left e Right servono per "troncare" le stringhe ad una lunghezza prefissata, non per "riempirle" se queste sono più corte. Quindi con Left(variabile, 30) chiedi di prendere i "primi" 30 caratteri a sinistra della stringa. È giusto che se la stringa sia più corta non te la riempia.
Un modo elegante potrebbe essere quello di inserire un controllo sull'effettiva lunghezza della stringa ricevuta:
DIM temp1, stringa AS String
IF Len(stringa)<30 THEN
temp1 = stringa & Space$(30-Len(Stringa))
ELSE
temp1 = Left$(Stringa, 30)
ENDIF
In temp1 hai una stringa lunga esattamente 30 caratteri.
Esattamente Leo,
il codice è proprio quello... e mi chiedevo se c'è un modo per verificare se Gambas esegue più velocemente questo codice:
IF Len(stringa)<30 THEN
temp1 = stringa & Space$(30-Len(Stringa))
ELSE
temp1 = Left$(Stringa, 30)
ENDIF
oppure quest'altro:
temp1 = Left(stringa & space(30), 30)
Mi ricordo che un mesetto fa mettesti un post proprio per confrontare i tempi di esecuzione di due codici che restituiscono il medesimo risultato...
OT. è più carico il Tag 'code=htlm'. Mi sa tanto che lo adotto... ;)
Beh, per fare una prova non devi far altro che crearti un programma che:
1) registri l'ora del sistema;
2) esegua un ciclo molto elevato in ripetizioni, diciamo 50.000 o 100.000 volte, all'interno del quale eseguire le operazioni richieste;
3) calcolare la differenza fra l'ora di termine del ciclo e l'ora di inizio che hai memorizzato al punto 1).
Ovviamente quello con la differenza minore è anche il codice che viene meglio implementato in Gambas.
O.T.:
Veramente ho sbagliato a cliccare su HTML, dovevo scegliere Gambas (che, come vedi, è proprio sopra). Questo è il risultato con Gambas:
IF Len(stringa)<30 THEN
temp1 = stringa & Space$(30-Len(Stringa))
ELSE
temp1 = Left$(Stringa, 30)
ENDIF
Grazie per la spiegazione... poi faccio qualche prova! ;)
Re-OT.
Non avevo notato che c'era la combo... "evidenzia la sintassi"... Io cliccavo sul tag code e poi aggiungevo a mano il tipo di linguaggio... :ok:
'Così mi piace molto molto!