Coucou,
J'ai un problème dans un programme C++ sous linux qui est peut être débile, mais ça m'énerve.
Suite au post de Kikx dans ce même forum juste avant, j'ai voulu bidouiller un peu un code qui s'inspirait du sien, en remplaçant les unsigned __int64 par des unsigned long long (c'est l'usage sous nux si je ne 'mabuse), et voilà :
m'affiche bien 8 octets, mais si je veux coller une valeur de 64bits dans une variable de ce type,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 printf("%d octets", sizeof(unsigned long long));
g++ me retourne que ma constante est trop grande pour un type long.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 unsigned long long t = 0x0123456789ABCDEF;
Manque de pot, t il est unsigned long long, et sizeof(t) donne bien 8... donc je ne comprends pas trop. Faut il que je précise qque chose au compilo ou quoi ?
Qqun a une explication / solution ?
Merci d'avance
Partager