Ciao!
Supponiamo che io dichiari due variabili:
signed long A;
unsigned short B;
supponiamo che assegni ad A un certo valore espresso in esadecimale.
Cosa si ottiene dalla seguente operazione?
B = (t_uword)A;
Grazie per l'aiuto.
Ciao!
Supponiamo che io dichiari due variabili:
signed long A;
unsigned short B;
supponiamo che assegni ad A un certo valore espresso in esadecimale.
Cosa si ottiene dalla seguente operazione?
B = (t_uword)A;
Grazie per l'aiuto.
My space! Voglio Arthur!!!
Ho fatto strike!!!
dotty78
Prima di postare in “XML, XSL, Smil” dai uno sguardo ai Link utili!
ops... ho riportato il typedef....
invece di
B = (t_uword)A;
vedete la seguente scrittura:
B = (unsigned short) A;
My space! Voglio Arthur!!!
Ho fatto strike!!!
dotty78
Prima di postare in “XML, XSL, Smil” dai uno sguardo ai Link utili!
dichiarare una variabile come
signed long Asigned long A significa dichiare una variabile intera con segno di lungezza massima, cioe long int A, A potra contenere sia numeri positivi che negativi, al max 31 bit perche iul 32 verra usato per indicare il segno, positivo (0) negativo (1).
unsigned short B significa dichiare una variabile sempre di tipo int, ma di 16 bit senza segno, cioe puo conentenre solo numeri positivi di max 16 bit
Ma il C e molto permmissivo e percio anche se tu dichiari una variabile di tipo unsigned short e poi usi un valore negativo o piu grande di 16 bit lui in automatico affettuera una conversione ad un tipo piu' grande di quello....
fare un operaziopne tipo b = (float) c/a significa che il risultato della divisione verrra salvato temporanemanete coem tipo float e poi assegnato a b, altrimenti la divisione avrebbe auto un risultato intero perche (supposto c ed a interti)
bye bye spero di essere stato chiaro e di averci indovitao
Se, quindi, assegno ad A il seguente valore:
A=0xD2;
dopo il casting avrò:
B=0xD
My space! Voglio Arthur!!!
Ho fatto strike!!!
dotty78
Prima di postare in “XML, XSL, Smil” dai uno sguardo ai Link utili!
NO! Prova per vedere.. perche non so cosa ti succede.. ma sicuramnte non puoi assegnare un valore esadecimanle ad una variabile che puo contenrere numeri interi....... O meglio tu assegni quello ma poi chissa cosa lui scrivera im memomria.. per saperlo prova...[supersaibal]Originariamente inviato da dotty78
Se, quindi, assegno ad A il seguente valore:
A=0xD2;
dopo il casting avrò:
B=0xD [/supersaibal]
ma nom lo pupi fare perche la var accetta valori interi e non esadecimali.. magari lo puoi inserire in una variabile char come testo.... ma noin in un int.....
Considera che A=210
210 in base esadecimale è D2 e in base 2 equivale a 11010010.
Allora in B cosa ci andrà?
B=D
B=2
:master:
My space! Voglio Arthur!!!
Ho fatto strike!!!
dotty78
Prima di postare in “XML, XSL, Smil” dai uno sguardo ai Link utili!
Ehm, hai detto una cosa errata.[supersaibal]Originariamente inviato da FreeManX
ma nom lo pupi fare perche la var accetta valori interi e non esadecimali.. [/supersaibal]
Un valore esadecimale può essere benissimo considerato un intero, solo che è espresso in base 16.
Qualsiasi assegnazione numerica può essere fatta in C utilizzando le basi 8, 10, 16.
Se a e b sono due Int, se tu assegni a B =A b varra 210!!![supersaibal]Originariamente inviato da dotty78
Considera che A=210
210 in base esadecimale è D2 e in base 2 equivale a 11010010.
Allora in B cosa ci andrà?
B=D
B=2
:master: [/supersaibal]
Senti spega cosa voi fare cosi magari vediamo... se le var RIPETO sono int accettano solo numeri decimali....
E due![supersaibal]Originariamente inviato da FreeManX
Senti spega cosa voi fare cosi magari vediamo... se le var RIPETO sono int accettano solo numeri decimali.... [/supersaibal]
Non è vero, hai una informazione errata.
Puoi assegnare un valore numerico ad un int utilizzando le basi 8, 10 e 16.
E gli e lo mantiente come esadecimale.. o gli e lo converte in decimalke???[supersaibal]Originariamente inviato da skidx
Ehm, hai detto una cosa errata.
Un valore esadecimale può essere benissimo considerato un intero, solo che è espresso in base 16.
Qualsiasi assegnazione numerica può essere fatta in C utilizzando le basi 8, 10, 16. [/supersaibal]
(sapevo di cannare.. e da poco che studio il c)