• 1 odgovor
  • 1.576 pregleda
Rasličito ponašanje na 2 compa-a 14.02.2014. u 13:02 · pre 154 meseci #1
E dakle, isti kod daje različite podatke na dva različita kompa:

Code:

function Nesto: MojTyp;
var g: word;
begin
   ...
   g := 30;
   ...
   g := g - 31;
   ...
   result.g := g;
end;


nakon g := g - 31
1. komp daje g := -1
2. komp daje g := maxWord - 1

Korisimo Delphi 2007
na jednom kompu je Vista64, a na drugom Win8

Exe kod pokrenut na trečem kompu daje isto različite rezultate....
Re: Rasličito ponašanje na 2 compa-a 14.02.2014. u 16:20 · pre 154 meseci #2
> 1. komp daje g := -1
> 2. komp daje g := maxWord - 1 // Ovde treba biti MaxWord

To je isti rezultat, samo zavisi kog ti je tipa Result.g i kako ga interpretiraš.
Word tip sam po sebi je namenjen prirodnim brojevima, ako ti je isključen range checking nećeš dobiti grešku i g će dobiti vrednost Word(-1).
Pitanje je šta se dalje dešava kod dodele Result.g i kod prikaza vrednosti tog broja, ako npr radiš konverziju u Integer onda ćeš dobiti 65535 a ako konvertuješ u Smallint dobićeš -1.
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme