[Tech] Compilatore cc

Franco Bagnoli bagnoli@dma.unifi.it
Lun 16 Apr 2001 10:50:50 CEST


On Sun, 15 Apr 2001, Ombra Rossa wrote:

> un compilatore c per dos, gratis piccolo, che compili il codice che scrivo 
> con linux su win95 o dosshell, per farlo vedere in esecuzione a amici e 
> parenti dicendo: "...guarda che bravo che sono...ehehe... questo l'ho fatto 
> tutto solo sai?" dove lo trovo?
> Come cosice non supero mai le 50-100 righe, quindi sono cose come gli 
> esercizi di un ritchie o un Deitel.

http://ee.cleversoul.com/free.html

Per quanto riguarda gli array in c: 

quando scrivi a[5] questo viene SEMPRE tradotto in *(a+5), tanto che:

1) se vuoi usare gli array partendo da 1 invece che da 0 (come in fortran) 
puoi allocarli con 

int * v;

v = (int *) malloc(N*sizeof(int)) - 1;

(ovviamente non puoi usare v[0].)

2) ugualmente, se vuoi usare un vettore da -5 a 7 (tipo pascal)

v = (int *) malloc(12*sizeof(int))+5;

3) e' lo stesso scrivere, in una subroutine, 


mysub( char * v) {
	...
	printf ("%c", *(v+5));
	...
}

o 

mysub( char *v) {
        ...
        printf ("%c", v[5]));
        ...
} 

4) infine, per rendere illeggibile il codice, puoi scrivere

5[a] = 3;

che e' lo stesso di 

a[5] = 3;

(dato che entrambi sono tradotti in *(a+5) = 3

ciao.

Franco Bagnoli
Dipartimento di Matematica Applicata "G. Sansone"
Universita' di Firenze, Via S. Marta, 3 I-50139 Firenze, Italy
tel. +39 0554796422, fax: +39 055471787
e-mail: bagnoli@dma.unifi.it






Maggiori informazioni sulla lista flug-tech