![]() |
Pages (2): [1] 2 » Show 150 posts per page |
.dsy:it. (http://www.dsy.it/forum/)
- Tech (http://www.dsy.it/forum/forumdisplay.php?forumid=189)
-- io *odio* il C (http://www.dsy.it/forum/showthread.php?threadid=17179)
io *odio* il C
Manipolazione di bit
percchazzo non funziona?
cioe la versione da sfigato con somme e prodotti va, quella + geek con gli shift no...
code:
/* converto da 8 -> 32 bit */ //dummy=dummy|RX_buffer[3]; //dummy<<8; dummy=(dummy+RX_buffer[3])*256; //dummy=dummy|RX_buffer[2]; //dummy<<8; dummy=(dummy+RX_buffer[2])*256; //dummy=dummy|RX_buffer[1]; //dummy<<8; dummy=(dummy+RX_buffer[1])*256; //dummy=dummy|RX_buffer[0]; dummy=dummy+RX_buffer[0]; fprintf(stdout, "%x \n", dummy);
code:
#include <stdio.h> unsigned long i=0; int main(int argc,char *argv[]) { i=1; printf("%x-->",i); i<<8; printf("%x",i); }
__________________
code:
, , | | Me@Flickr [ov0] | | my photo Blog {| |} |@| Pallavolo La Nuova Rossa Milano --"-"--| | -------| | "If You Can't Open It, You Don't Own It"
dummy<<8;
i<<8;

__________________
~ get Debian! ~ get FreeBSD! ~ get OpenBSD! ~
code:
#include <stdio.h> unsigned long i=0; int main(int argc,char *argv[]) { i=1; printf("%x-->",i); i=i<<8; printf("%x",i); }
__________________
code:
, , | | Me@Flickr [ov0] | | my photo Blog {| |} |@| Pallavolo La Nuova Rossa Milano --"-"--| | -------| | "If You Can't Open It, You Don't Own It"
Prova con un espediente banale:
invece di i<<8 scrivi i=i<<8
Riposta se non funza.
[EDIT] alla mia età i riflessi sono + lenti.... cmq il C è un linguaggio stupendo, basta solo usarlo con la testa (= non usare le abbreviazioni... non dimentichiamo che i sorgenti servono a chi li legge per capirli...)
__________________
Furbo è colui che è molto bravo a togliersi da quei guai in cui il saggio non si sarebbe mai cacciato
Il bravo motociclista è come un buon amante: ha equilibrio, giudizio e tempismo.
Nessuna forma d'amore ha tanto rispetto per la libertà dell'altro come l'amicizia.
anzi uso <<= che fa figo
__________________
code:
, , | | Me@Flickr [ov0] | | my photo Blog {| |} |@| Pallavolo La Nuova Rossa Milano --"-"--| | -------| | "If You Can't Open It, You Don't Own It"
Originally posted by cato
ma vaff...
che linguaggio di merda

__________________
~ get Debian! ~ get FreeBSD! ~ get OpenBSD! ~
usa assembly che è meglio 
__________________
Se il pugno e' chiuso la mano e' vuota. Solo se la mano e' aperta puoi possedere tutto
Originally posted by DeepBlue
Non assegni il valore dei risultati.
Prova con i = i<<8 o con dummy = dummy << 8;
![]()

__________________
code:
, , | | Me@Flickr [ov0] | | my photo Blog {| |} |@| Pallavolo La Nuova Rossa Milano --"-"--| | -------| | "If You Can't Open It, You Don't Own It"
Originally posted by cato
anzi uso <<= che fa figo
__________________
Furbo è colui che è molto bravo a togliersi da quei guai in cui il saggio non si sarebbe mai cacciato
Il bravo motociclista è come un buon amante: ha equilibrio, giudizio e tempismo.
Nessuna forma d'amore ha tanto rispetto per la libertà dell'altro come l'amicizia.
il problema a volte è proprio del compilatore che rompe le balle con warning sulle conversioni implicite (magari sui puntatori) e poi si dimentica di segnarlare errori come quello o la mancanza del doppio == nelle if e nei cicli, errore che ogni tanto si commette
però il linguaggio è bello
__________________
Sono sempre alla ricerca di curriculum interessanti da segnalare alle società con cui ho contatti. Info in pm
Originally posted by cato
![]()
![]()
![]()
ma ca##o mette un warning pareva brutto?

__________________
~ get Debian! ~ get FreeBSD! ~ get OpenBSD! ~
Originally posted by recoil
il problema a volte è proprio del compilatore che rompe le balle con warning sulle conversioni implicite (magari sui puntatori)
KUT
__________________
Furbo è colui che è molto bravo a togliersi da quei guai in cui il saggio non si sarebbe mai cacciato
Il bravo motociclista è come un buon amante: ha equilibrio, giudizio e tempismo.
Nessuna forma d'amore ha tanto rispetto per la libertà dell'altro come l'amicizia.
Originally posted by jdhoring
e fa pure bene.... sennò il cast a cosa serve?
__________________
Sono sempre alla ricerca di curriculum interessanti da segnalare alle società con cui ho contatti. Info in pm
Beh un warning su un cast implicito è sicuramente più utile che uno su un'operazione che non ha effetto.
Anche perché il cast potresti essertelo dimenticato e con i puntatori si rischia sempre di fare casino.
Off-Topic:
sempre a riguardo di casting, se fate una ricerca su it.comp.lang.c troverete un sacco di gente che si incazza a morte quando fate il casting sulle malloc... mi ha sempre divertito questa cosa, soprattutto perché in uni ci tenevano parecchio al casting sulle malloc, anche se di fatto non è strettamente necessario
__________________
~ get Debian! ~ get FreeBSD! ~ get OpenBSD! ~
Originally posted by DeepBlue
Beh un warning su un cast implicito è sicuramente più utile che uno su un'operazione che non ha effetto.
Off-Topic:
sempre a riguardo di casting, se fate una ricerca su it.comp.lang.c troverete un sacco di gente che si incazza a morte quando fate il casting sulle malloc... mi ha sempre divertito questa cosa, soprattutto perché in uni ci tenevano parecchio al casting sulle malloc, anche se di fatto non è strettamente necessario
__________________
Sono sempre alla ricerca di curriculum interessanti da segnalare alle società con cui ho contatti. Info in pm
| All times are GMT. The time now is 08:05. | Pages (2): [1] 2 » Show all 25 posts from this thread on one page |
Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.