[Tech] Domanda di C
Valerio Montagnani
tech@vmontagnani.it
Ven 9 Lug 2004 11:47:34 CEST
On Fri, 9 Jul 2004 11:37:34 +0200
VM wrote:
> Definendo i due vettori come semplici *pari, *dispari funziona meglio;
> infatti i valori pari vengono correttamente estratti e inseriti nel
> vettore *pari, mentre i dispari vengono fuori a caso.
>
Funziona tutto se si fanno due cicli distinti: uno per i pari e uno per
i dispari.
Adesso mi viene in mente un'altra cosa.
L'elaborazione della riga:
*(pari +1) = *(buffer + 2*i);
č pių veloce di quella:
pari[i]=buffer[2*i];
o no?
Mi spiego meglio: usando l'aritmetica dei puntatori dico di far
riferimento alla locazione buffer e calcolare l'offset, mentre se uso la
seconda forma devo valutare fisicamente il contenuto di buffer[2*i]?
In altre parole usando la prima sintassi i programmi schizzano pių
velocemente (nel caso abbia vettori grossi naturalmente), o mi sbaglio?
Ciao, Vale
--
Valerio Montagnani (Lug-Account) <tech@vmontagnani.it>
pub 1024/C7E4BC57 sub 2048g/0E170155
Key fingerprint = D5A4 EDFC 060C 5BD6 E2DD 8252 3B67 C1EB C7E4 BC57
Maggiori informazioni sulla lista
flug-tech