jak se to dělá trochu posun v __int64?

C

chewbecca

Guest
__int64 i = 0;

i>> = 9;

proč není i 0?

a jak to udělat ve správném posunu?

 
Je to C?__int64, Že zní jako jazyk rozšíření poskytovaných váš kompilátor.Pokud se jedná o 64 bitový integer typu, pak po pravé straně-shift by měly fungovat dobře.Možná, že tak, jak si zkouší i je nesprávné.Řekněte nám, které překladač, který používáte, a ukázat nám malý kompletní program, který demonstruje problém, a možná se nám může pomoci najít problém.

Například, MinGW (GCC 3.4.2) poskytuje __int64, a to správně vypíše "i je nula":

Kód:

# include <stdio.h>int main (void)

(

__int64 i = 0;i>> = 9;

if (i == 0)

printf ( "i je nulová \ n");

jiné

printf ( "i není nula \ n");

return 0;

)
 
nazdar,
Také jsem zkontrolovat na slunci kompilátor funguje naprosto v pořádku ,....

 

Welcome to EDABoard.com

Sponsor

Back
Top