Churc Postado Novembro 19, 2006 Denunciar Share Postado Novembro 19, 2006 opa,tava tentando passar uns códigos de C++ pra Delphiai tem várias coisas estranhas né mas beleza, eu enrosquei nissounsigned char nullTerminator = 0x00;como vi, unsigned char é byte em pascal, até ai tudo bem... e sei que 0x00 é equivalente a $pois em alguns códigos, quando se passa endereço de memória em C++ é0x0060A038e em pascal seria equivalente a$60A038agora tipo, como vou descobrir, convertendo tipo0x00 = $0x90 = ao que? rsComo converter, mas saber o caractere equivalente, ou qualquer maneira serve aUHEahuachei isso na net, ajuda mas ainda não entendi rsWhen converting a signed byte to an unsigned byte: var u: shortint; { signed 8bit integer } s: byte; { unsigned 8bit integer } c: char; { unsigned 8bit char } begin u := 12; { u = 0x0C } s := u; { s = 0x0C } c := chr(s); { c = 0x0C } u := -2; { u = 0xFE: -2 } s := u; { s = 0xFE: 254 } c := chr(s); { c = 0xFE: #254 } end;alguém tem alguma idéia? :Dabraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Thales Pontes Martins Postado Novembro 19, 2006 Denunciar Share Postado Novembro 19, 2006 Opa,0x = $ 0xE4 = $E4 (char)0xFE = -2 (unsigned char)0xFE = 254 { char c; c = 254; caption = IntToStr(c); //será mostrado -2 }Abração. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Churc Postado Novembro 19, 2006 Autor Denunciar Share Postado Novembro 19, 2006 opa thaless blzzentão,unsigned char nullTerminator = 0x00;eu declareiconstnullTerminator: Byte = $;então esse outrounsigned char nop = 0x90;ficaria...constnop: Byte = $90;seria isso?abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Thales Pontes Martins Postado Novembro 19, 2006 Denunciar Share Postado Novembro 19, 2006 eu declareiconstnullTerminator: Byte = $;$ sozinho não existe, tem que vir um número hexa depois. Então ->const nullTerminator: Byte = $0; ou 0. $0 = 0 não acha? unsigned char nop = 0x90; ficaria... const nop: Byte = $90;Está certo. Mas melhor seria -> const nop = byte($90); Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Churc Postado Novembro 19, 2006 Autor Denunciar Share Postado Novembro 19, 2006 aaaa fmzz valeu thales, vo tenta lá rsrabraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Churc
opa,
tava tentando passar uns códigos de C++ pra Delphi
ai tem várias coisas estranhas né mas beleza, eu enrosquei nisso
unsigned char nullTerminator = 0x00;
como vi, unsigned char é byte em pascal, até ai tudo bem... e sei que 0x00 é equivalente a $
pois em alguns códigos, quando se passa endereço de memória em C++ é
0x0060A038
e em pascal seria equivalente a
$60A038
agora tipo, como vou descobrir, convertendo tipo
0x00 = $
0x90 = ao que? rs
Como converter, mas saber o caractere equivalente, ou qualquer maneira serve aUHEahu
achei isso na net, ajuda mas ainda não entendi rs
alguém tem alguma idéia? :D
abraço
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.