Come dicevo nel messaggio precedente, eviterei confronti con VB6, soprattutto con i nomi di funzioni e i costrutti estremamente particolari.Originariamente inviato da daspide
Nel momento in cui decido di passare alla pratica mi scontro con vecchi esempi e cerco di dedurre per confronti oppure per togliermi certe curiosità prima di studiarle.
Non occupa il doppio numero di caratteri: il numero di caratteri all'interno di una stringa saranno sempre quelli che memorizzi; se una parola è formata da 10 caratteri, avrà 10 caratteri. Ciò che è doppio è la dimensione che occupa ciascun carattere, che è di 2 byte perché si tratta di caratteri Unicode, uno standard che prevede appunto 2 byte per rappresentare un singolo carattere.Originariamente inviato da daspide
Dim aa as string
me.t.text = aa.Lenght
occuperà il doppio del n° di caratteri?!?!
Un carattere non vale 2 byte, ma occupa due byte. Ciò che hai fatto nel tuo codice è semplicemente convertire il valore di Length, che come ho già detto restituisce la lunghezza in caratteri di una stringa in un valore di tipo Byte, pertanto se una stringa è formata da 10 caratteri, otterrai un valore pari a 10 leggendo Length, e convertendo 10 in un valore di tipo Byte otterrai, appunto, un valore di tipo Byte contenente 10.Originariamente inviato da daspide
in nessun caso mi dice che un carattere vale 2 BYTE!