jump to navigation

Tipo Boolean no VB.NET Outubro 11, 2007

Posted by Daniel Ferreira in Dicas.
Tags: , ,
trackback

Para evitar que muitas pessoas percam tempo assim como eu perdi tentando descobrir o motivo de um erro místico que estava acontecendo comigo, segue uma curiosidade:

No VB.NET, ao converter o tipo Boolean para Integer, o que acontece é o seguinte:

CInt(True) = -1
CInt(False) = 0

O que era de se esperar, assim como na maioria das linguagens, era que True=1 e False=0.
Bem, ainda estou pesquisando o porquê que acontece isso no VB.NET…. Quem tiver informações, favor divulgar.

Abraços!

Comentários»

1. jkoss - Outubro 12, 2007

Eu estou usando um inglês ao tradutor portuguese. Eu diria que aquele sobre a metade das línguas de programação atribui = -1 verdadeiro e a outra metade = de 1 verdadeiro. A razão para = -1 verdadeiro tem que dívida com a respresentação binária dos valores. Se nós dissermos que = 0 falso, então nós podem definir verdadeiro = nao falso. Não 0 = -1 para inteiros assinados em dois processadores do complemento. No hexadecimal, o vaue é &HFFFFFFFF (todos os bocados se ajustam a 1)