Originariamente inviato da Mtu
Salve,
sto convertendo un breve codice da C in VB, ma il primo linguaggio lo conosco meno del secondo!
Può qualcuno aiutarmi a capire le istruzioni seguenti?

if (0) { ... segue blocco di istruzioni
tra parentesi c'è uno zero. Che senso ha questa condizione? Non è sempre vera?

num = 64 * ((int) cChar - (int) '0');
dove cChar è un carattere, p.e. "A". Io convertirei questa linea in
num = 64 * (Asc(cChar) - Asc("0"))
ma non capisco il motivo di Asc("0")!

Grazie infinite,
Nino

PS Conoscete qualche sito in cui posso trovare le corrispondenze fra le sequenze di escape di C e i codici ASCII ("\r"=13)?
L'istruzione Asc serve appunto ad ottenere il valore nella tabella ASCII di 0. Perchè nel codice C con l'istruzione
(int) cChar
fa una conversione (cast) del carattere cChar ad int, quindi al corrispondente valore decimale del carattere A.

Se tu hai in C la variabile
char ch = 'a'
e la casti in int, otterrai il valore 97. In VB fai appunto
Asc("a") =97

Se dici che nello specifico non capisci Asc("0") guarda che
Asc("0") = 48, occhio a non confondere 0 con null.

ciao.