Ciao,
Il 14/06/2012 13:45, [email protected] ha scritto:
----Messaggio originale----
Da: [email protected]
'dichiarazione variabili locali
Dim sTemp As String
..omiss...
'ricava un carattere nella posizione iPos
stemp = Mid( StringToReverse, iPos, 1)& sTemp
..omiss...
'esce dalla funzione con il risultato sTemp
ReverseString = sTemp
ciao,
potresti spiegare cosa fa la riga con la funzione Mid() ?
MI è chiaro che Mid estra un stringa da un'altra, e mettendo 1 come terzo
argomento, estrae un solo carattere,
pronto da essere inserito in posizione opposta.
Quello che non so è cosa fa la parte "& sTemp" e il seguente riassegnamento a
"stemp".
In effetti non so nemmeno se i nomi delle variabili sono case sensitive.
In starBasic e in generale in Basic (es. VB) gli identificatori (nomi
delle variabili, costanti, routine, function eccetera) NON sono case
sensitive.
Il carattere & è l'operatore di concatenazione delle stringhe, quindi la
riga di codice in questione significa:
stemp = Mid( StringToReverse, iPos, 1) & sTemp
"prendi il iPos-esimo carattere da StringToReverse e mettilo all'inizio
della stringa sTemp"
iPos è la variabile di controllo del ciclo For e va da 1 al numero di
caratteri nella stringa da rovesciare
Perciò supponiamo che la stringa da rovesciare sia "Roma", quello che
succede in sequenza è:
prima iterazione:
Prendi il primo carattere di "Roma" e attaccalo all'inizio della stringa
sTemp
(sTemp all'inizio è vuota perciò dopo la prima iterazione avremo sTempo
= "R")
seconda iterazione:
Prendi il secondo carattere di "Roma" e attaccalo all'inizio della
stringa sTemp
(sTemp era "R", perciò dopo questa iterazione avremo sTempo = "oR")
terza iterazione:
Prendi il terzo carattere di "Roma" e attaccalo all'inizio della stringa
sTemp
(sTemp era "oR", perciò dopo questa iterazione avremo sTempo = "moR")
quarta iterazione:
Prendi il quarto carattere di "Roma" e attaccalo all'inizio della
stringa sTemp
(sTemp era "moR", perciò dopo questa iterazione avremo sTempo = "amoR")
--fine della routine
saluti
Paolo M
---------------------------------------------------------------------
Per cancellarsi: [email protected]
Per informazioni: http://www.openoffice.org/it/
Per avviare una nuova discussione: [email protected]
Archivi: http://mail-archives.apache.org/mod_mbox/incubator-ooo-utenti-it