[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico]
[Índice de assunto]
RE: Fileid
Alexandre Freire da Silva writes:
> Mas eu quero ffff e não ssss certo???? Agora estou confuso! E como são as
Sim, você quer ffff e não ssss. Eu é que me enganei. Devia ser:
shift cast p/
right short
de 32 (16 bits)
ssssffffpppppppp -------> 00000000ssssffff -----------> ffff
^^^^
Assim está certo!
> regras do cast, como funciona ou onde posso achar uma explicação, alguem
> pode me ajudar???
O cast para short simplesmente pega os 16 bits menos significativos
(ffff no caso acima) e descarta os demais.
Reverbel
>
> Alexandre Freire <alex@linux.ime.usp.br>
>
> On Mon, 26 Apr 1999, Francisco Reverbel wrote:
>
> > Alexandre Freire da Silva writes:
> > > Mas professor, se o pageId conter tambem o record id (mais para frente no
> > > projeto) este metodo funciona?????
> >
> > Funciona!
> > shift cast p/
> > right short
> > de 32 (16 bits)
> > ssssffffpppppppp -------> 00000000ssssffff -----------> ssss
> >
> > Reverbel
> >
> > >
> > > Alexandre Freire <alex@linux.ime.usp.br>
> > >
> > > On Sun, 25 Apr 1999, Francisco Reverbel wrote:
> > >
> > > > Alexandre Freire da Silva writes:
> > > > > Não vou usar os métodos relacionados ao recid nesta fase do projeto
> > > > > certo???
> > > > > mas eu preciso de um método que me retorne o fileId a partir do pageId
> > > > > como eu faço isso?
> > > >
> > > > Uma maneira elegante é por na classe DBFile um método assim:
> > > >
> > > > static short idFromPID(long pid) { return (short)(pid >> 32); }
> > > >
> > > > Quando precisar obter um fileId a partir de um pageId, diga:
> > > >
> > > > fileId = DBFile.idFromPID(pageId);
> > > >
> > > > Reverbel
> > > >
> > >
> >
>
- References:
- RE: Fileid
- From: Francisco Reverbel <reverbel at ime.usp.br>
- RE: Fileid
- From: Alexandre Freire da Silva <alex@linux.ime.usp.br>