Re: char array to long

Tilman Schmidt <[email protected]>
Newsgroups gmane.linux.suse.programming
Organization Phoenix Software GmbH
Message-ID <[email protected]>
Stefan Hundhammer schrieb:

> On Thursday 19 August 2004 16:59, Jan Hendrik Berlin wrote:
[...]
>> l=0;
>> l=c[0];
>> l=l+(c[1]*0x100);
>> l=l+(c[2]*0x10000);
>> l=l+(c[3]*0x1000000);
[...] 
> Im ÃŒbrigen hast Du zwar das Horner-Schema richtig angewendet,

Hat er eben nicht!

> aber statt einer 
> teuren Multiplikation sollte man hier besser einen Links-Shift um 8 Stellen 
> verwenden:

Das macht eigentlich jeder Compiler, der sein Geld wert ist, von sich
aus, wenn er eine Multiplikation mit einer konstanten Zweierpotenz sieht.

> Auf die Reihenfolge habe ich hier jetzt absichtlich nicht geachtet, denn das 
> ist wirklich architekturabhÀngig - damit machst Du Dein Programm im höchsten 
> Maß unportabel.

Oder gerade erst portabel - wenn nÀmlich die Bytereihenfolge extern
vorgegeben und unabhÀngig von der Maschinenarchitektur ist.

-- 
Tilman Schmidt                            [email protected]
Phoenix Software GmbH                             Tel. +49 228 97199 0
Adolf-Hombitzer-Str. 12                           Fax +49 228 97199 99
53227 Bonn, Germany                      http://www.phoenixsoftware.de

-- 
Um die Liste abzubestellen, schicken Sie eine Mail an:
    [email protected]
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.