locale i isalnum() problem

Jakub Bogusz qboosh w pld.org.pl
Pon, 18 Mar 2002, 11:23:49 CET


On Mon, Mar 18, 2002 at 11:17:53AM +0100, Michal Moskal wrote:
> On Sun, Mar 17, 2002 at 08:50:21PM +0100, Andrzej Krzysztofowicz wrote:
> > > 
> > > On Sat, Mar 16, 2002 at 21:21:17 +0100, Andrzej Krzysztofowicz wrote:
> > > 
> > > > > czyli wywołanie isalnum(2147483646) jest nielegalne.
> > > > 
> > > > Ano.
> > > > Czyli caly joe jest pod tym katem do przejrzenia...
> > > > 
> > > > Ciekawe tylko, co sie zmienilo w joe, ze zachowanie tej funkcji
> > > > z wersji na wersje (2.9.6 -> 2.9.7) uleglo tak drastycznej zmianie...
> > > 
> > > 2147483647 to górny zakres signed long int. Wygląda jakby się coś
> > > przekręciło.
> > 
> > Nic sie nie przekrecilo. Autorzy joe uzywaja 2147483646 (nie wiem czemu
> > nazywajac ja MAXINT) 
> 
> Bo to jest MAXINT.

2147483646? MAXINT to o jeden więcej.

$ grep MAXINT -r /usr/include
[...]
/usr/include/values.h:#define   MAXINT          INT_MAX
[...]
$ grep INT_MAX -r /usr/lib/gcc-lib/i686-pld-linux/2.95.4/include
[...]
/usr/lib/gcc-lib/i686-pld-linux/2.95.4/include/limits.h:#define __INT_MAX__ 2147483647
[...]
/usr/lib/gcc-lib/i686-pld-linux/2.95.4/include/limits.h:#define INT_MAX __INT_MAX__
[...]


-- 
Jakub Bogusz



Więcej informacji o liście dyskusyjnej pld-devel-pl