[pso] tema 3 - linux MAXINT
Daniel Mahu
pso@cursuri.cs.pub.ro
Thu, 21 Apr 2005 21:04:33 +0300
> Eu mi l-am definit singur. Poti sa-l scrii asa
> #define MAXINT 0x7FFFFFFF - asa in cazul ca esti sigur ca intul e pe 32 biti unde va rula dri
verul
> sau asa #define MAXINT 2147483647
Nuuu!!...
> As sugera urmatoarea varianta :D
> #define MAXINT ( ((long int)1) << sizeof(int)*8 ) - 1
Nici asa nu merge: warning: left shift count >= width of type
(si rezulta -1)
> Alexandru Gartner <mgalex@gmx.net> wrote:
> Am si eu o intrebare...(nu ma injuratzi prea tare)...ce e cu MAXINT-ul asta
> ?
> E definit pe undeva ?
>
> Mersi!
Exista INT_MAX; este in...
/usr/src/linux/include/linux/kernel.h:#define INT_MAX ((int)(~0U>>1))
Si ca metoda generala pentru astfel de probleme, eu folosesc de obicei
grep -R INT_MAX /usr/src/linux/include/
--daniel