Newsgroup: it.comp.lang.c
Titolo: Altre domande

1) Si può stampare un numero base 8,10 o 16 in binario e viceversa, o devo
fare un programmino di conversione?
2) ogni operazione su diversi tipi interi viene fatta in tempi uguali?
Intendo: fare ad esempio una somma tra 2 char o tra due unsigned long int
porta via lo stesso tempo? E tra float e long double?
3) si possono usare altri tipi di interi, ad esempio, int64 su ul processore
a 32 bit? E se ne possono creare altri intermedi tipo int 16, 24...)?
4) lo so che sembra una cretinata, ma ...come si fanno sulla tastiera i
simboli corrispondenti agli operatori or logici e bit a bit?
5) ho provato ad eseguire un prog compilato con DJGPP in dos (non da
finestra dos in windows), e mi dice che devo avere un certo file (dovrebbe
essere il dos extender...). Ma questo si installa sul PC, e viene eseguito
ogni volta che viene richiesto, o è un modulo di DJGPP che fa si che venga
incluso l'extender direttamente nel programma? (con DOS4GW mi pare che
questo venisse accluso nei programmi che lo utilizzavano, come file a parte,
o no?...)
Come sempre, grazie mille!
--
Marco Iannaccone
ICQ: 18748121
IRC: Tolkien
e-mail: 
captai...@ussvoyager.com

incluso l'extender direttamente nel programma?
E' un eseguibile a parte che viene eseguito ogni volta che si lancia
il programma.

 incluso l'extender direttamente nel programma?
Quello è un file esterno. Non so se ci sia la possibilità di includerlo
nell'eseguibile o comunque di rendere quest'ultimo indipendente.
EMG

>fare un programmino di conversione?
...ops... mi era sfuggito il "binario"...
Stampare un numero in binario non e' previsto in modo standard ma puoi
farlo con routine semplicissime del tipo :
void stampa_binario ( unsigned long x )
{
     char buffer [100] ;
     int i = -1 ;
     for ( ; x ; x >>= 1 ) buffer [++i] = x % 2 ;
     for ( ; i >= 0 ; i-- ) putchar ( buffer [i] + '0' ) ;
     putchar ( '\n' ) ;
}


ICQ #34602650

Grazie mille!
Per il simbolo | e || non mi ricordavo che era quella specie di due punti
allungati sotto l'ESC....


>fare un programmino di conversione?
Si. Per esempio, qualcosa del tipo
void stampa_binario(unsigned long a)
{
        if(a) {
                stampa_binario(a>>1);
                putchar((a & 0x01) ? '1' : '0');
        }
}
Ciao ciao,
Andrea
-- 
"...Unix, MS-DOS, and Windows NT (also known as the Good, the Bad, and 
 the Ugly)."
(by Matt Welsh)

 
perdona l'ignoranza...
ho provato a fare un
	man itoa
sotto linux, ma non lo conosce :-(
Conosce invece atoi, che converte una stringa in un intero.
Inoltre, ho trovato strtol, che converte una stringa in un intero lungo.
Quest'ultima supporta l'"opzione" della base... atoi sottointende base 10.
Cosa posso usare, in alternativa ad itoa, che non c'e'??
Grazie!
Ema ;-)
-- 
"Piu' e' urgente il motivo per cui si fa una cosa, piu' lento sara'
l'impiegato allo sportello", regola di Flugg

 sotto linux, ma non lo conosce :-(
itoa non e' definito dalla standard library; e' una estensione.
Prova sprintf ...
-- 
Maurizio Loreti                      
http://wwwcdf.pd.infn.it/~loreti/mlo.html
Un. of Padova, Dept. of Physics - Padova, Italy          
lor...@padova.infn.it

	man itoa
Infatti e' un estensione che posseggono la maggior parte dei
compilatori.