Article View: be.comp.programming
Article #10837Re: Integer vs Real
From: Philip Paeps
Date: Sun, 24 Feb 2002 00:03
Date: Sun, 24 Feb 2002 00:03
61 lines
3224 bytes
3224 bytes
Babsje <newsgroupemail2000.removenospam@yahoo.com> wrote:
> Hartelijk dank voor je antwoord, maar ik moet je eerlijk bekennen dat ik van
> C (nog) niets weet (ik wil mij daar wel in gaan verdiepen) en ik begrijp
> eerlijk gezegd niet zo heel veel van wat je vertelt. Ik heb er geen idee van
> wat een typecast betekent.
Een typecast betekent zoveel als 'en voor deze operatie, lieve compiler, ga je
deze variable als een 'iets' beschouwen in plaats van 'iets anders''. Met een
typecast kan een dus een float als een int aan een operatie geven.
In mijn voorbeelje had die drie variables: twee floats (a en b) en ��n int
(result). Ik wou dat mijn 'result' de som van twee floats was, en vertaalde
ze dus eerst naar ints door er een typecast voor te zetten.
Bij de printf() wou ik mijn 'result' als een float, dit deed ik ook met een
typecast.
Vermoedelijk kan je in Pascal hetzelfde of iets gelijkaardigs doen. Je gaat
je variables declaren als ��n type ('real') en in sommige operaties als ander
type gebruiken (met een typecast).
Net even in mijn Pascal boek gekeken:
var
c: char;
b: byte;
begin
c := 's';
b := c; // compiler complains
end.
Met typecast
var
c: char;
b: byte;
begin
c := 's';
b := byte(c); // happy compiler
end.
Typecasten in Pascal doe je dus door er het type gewoon voor te hangen.
Kleine opmerking: je kan enkel typecasten als de geheugenplaats van de twee
types dezelfde is. Als dat niet zo is, moet je eerst Trunc() of Round()
gebruiken.
Als je dus een functie hebt die een integer wil, en jij hebt een real, zul je
waarschijnlijk gewoon 'int(real)' in die functie moeten gooien.
> Maar toch heel erg bedankt voor de genomen moeite!
Geen probleem. Nog eens een excuus om Pascal te leren. Ik blijf echter
liever bij C, voel ik me happier in.
- Philip
--
Philip Paeps philip@paeps.cx
On successive charts of the same organization, the number of
boxes will never decrease.
Technical Details
Message-ID:
<%4Wd8.177395$rt4.19916@afrodite.telenet-ops.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!62.24.128.9.MISMATCH!news-1.opaltelecom.net!newsfeed.icl.net!newsfeeds.belnet.be!news.belnet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mailReferences:
<3c781e09$0$75152$ba620e4c@news.skynet.be> <kgVd8.177211$rt4.19958@afrodite.telenet-ops.be> <3c782651$0$33503$ba620e4c@news.skynet.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII
X-Google-Thread: fcea4,bb91a838e416d0a9
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2002-02-23 16:03:11 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!62.24.128.9.MISMATCH!news-1.opaltelecom.net!newsfeed.icl.net!newsfeeds.belnet.be!news.belnet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
From: Philip Paeps <philip@paeps.cx>
Subject: Re: Integer vs Real
Newsgroups: be.comp.programming
References: <3c781e09$0$75152$ba620e4c@news.skynet.be> <kgVd8.177211$rt4.19958@afrodite.telenet-ops.be> <3c782651$0$33503$ba620e4c@news.skynet.be>
User-Agent: tin/1.5.11-20020130 ("Toxicity") (UNIX) (FreeBSD/4.5-STABLE (i386))
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-15
Content-Transfer-Encoding: 8bit
Lines: 61
Message-ID: <%4Wd8.177395$rt4.19916@afrodite.telenet-ops.be>
Date: Sun, 24 Feb 2002 00:03:07 GMT
NNTP-Posting-Host: 213.118.35.252
X-Complaints-To: abuse@pandora.be
X-Trace: afrodite.telenet-ops.be 1014508987 213.118.35.252 (Sun, 24 Feb 2002 01:03:07 MET)
NNTP-Posting-Date: Sun, 24 Feb 2002 01:03:07 MET
Organization: Telenet Internet