🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #1509

Re: Printf: vaste lengte strings en ints?

#1509
From: moi
Date: Wed, 02 Mar 2005 23:21
56 lines
3563 bytes
Dr.Ruud wrote:
> Wat moi schreef, bleek het
> begin  van iets moois; kijk zelf maar:
> 
>>Dr.Ruud:
>>
>
>>>Het had ons allemaal heel wat exploits kunnen schelen.
> 
> 
>>Exploits wegens 32->64 bits "migratie" ?
> 
> 
> Er waren ooit al andere problemen, zoals
>   printf("value of 32768 is %d\n", 32768);
> 

Je bedoelt: op een platform waar een int 16 bits is ?

(trouwens ook hier bewijst casten naar int zijn zinloosheid)
BTW speelt nog wat anders mee: "silent promotion to int" van
functieargumenten.



> OK, maar OP vroeg om een oplossing bij %d, en er mocht afgekapt worden.
> 
Ja, maar we zijn nu toch al bijna off-topic.

> Er zijn, zoals gemeld, genoeg manieren om de buffer lang genoeg te laten
> zijn, dus dan heb je die cast helemaal niet nodig, en hoef/mag/moet je
> 'm dus ook niet gebruiken.
> 
> En printf() is meer iets van de vorige eeuw. Die slechte relatie
> tussen wat er op de stack wordt gezet (de argumenten) en wat er
> weer wordt afgehaald (afhankelijk van de tekst die in de format-
> string staat) gaat tegen alle elegantie in. Zelfs late-binding
> is minder onfris.
> 

Het is idd een vunzige functie. (en hij wordt er niet mooier op)
Heel lastig, hoe de mapping van binaire naar humaan-leesbare 
reprensentatie in een formaat-string wordt samengeperst, en tussen de 
bedrijven door ook nog even assumpties over types en sizes worden 
gedaan. Aan de andere kant is het weer prakties om alles in een
compacte representatie (de formatstring) te hebben. Jammer alleen, dat 
die toch wel een beetje samenhangt met de de functie-argumenten.
Als het goed is, dan. Trouwens: de hele varargs construktie is, in al 
zijn lelijkheid, uiterst gewenst.

Dat fprintf() cs van de vorige eeuw zijn, zou ik niet willen zeggen.
(kwa ontstaansdatum wel, uiteraard ...)
De functionaliteit blijft toch nodig; bij een grondige redesign zouden 
er ook weer keuzes gemaakt worden. Die later weer verkeerd kunnen uitpakken.

AvK
Technical Details
Message-ID: <pKGdnfvnjtP817vfRVnysw@casema.nl>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news.glorb.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local01.nntp.dca.giganews.com!nntp.casema.nl!news.casema.nl.POSTED!not-for-mail
References: <M5qdnYvpZutbs7nfRVnyjA@scarlet.biz> <d01i4u.14c.1@news.isolution.nl> <CqudnXnc_MjnCbjfRVnyhg@casema.nl> <d050po.130.1@news.isolution.nl> <FMSdnW58LdbOtrvfRVnyvQ@casema.nl> <d05hsg.1bo.1@news.isolution.nl>

Show Full Headers
Complete Article Headers
X-Google-Thread: fcea4,f962124bbb04ff22
X-Google-Thread: 107324,f962124bbb04ff22
X-Google-Attributes: gidfcea4,gid107324,public
X-Google-Language: DUTCH,ASCII-7-bit
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news.glorb.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local01.nntp.dca.giganews.com!nntp.casema.nl!news.casema.nl.POSTED!not-for-mail
NNTP-Posting-Date: Wed, 02 Mar 2005 17:21:05 -0600
Date: Thu, 03 Mar 2005 00:21:04 +0100
From: moi <avk@localhost>
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040510
X-Accept-Language: en-us, en
MIME-Version: 1.0
Newsgroups: be.comp.programming,nl.comp.programmeren
Subject: Re: Printf: vaste lengte strings en ints?
References: <M5qdnYvpZutbs7nfRVnyjA@scarlet.biz> <d01i4u.14c.1@news.isolution.nl> <CqudnXnc_MjnCbjfRVnyhg@casema.nl> <d050po.130.1@news.isolution.nl> <FMSdnW58LdbOtrvfRVnyvQ@casema.nl> <d05hsg.1bo.1@news.isolution.nl>
In-Reply-To: <d05hsg.1bo.1@news.isolution.nl>
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
Message-ID: <pKGdnfvnjtP817vfRVnysw@casema.nl>
Lines: 57
NNTP-Posting-Host: 83.83.6.100
X-Trace: sv3-jQxfQMaqK2Svbula32oqW4o/3pukIAq/yh8tWJgA3eeb10R3YSlr4Rl13b54STgGXqGtKZ9DHdqJeCx!BImjOAWHFGiExjs2Dm5y+WUqn/r5LF02W0h/aPeNjRKpoCXlm0Dd4ji21RPNcyyDNoI=
X-Complaints-To: abuse@casema.nl
X-DMCA-Complaints-To: abuse@casema.nl
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.32