69 tecken kort UTF-8-kodare i C
Per von Zweigbergk
pvz at kth.se
Sat Jun 30 15:44:20 CEST 2007
30 jun 2007 kl. 14.30 skrev David Vuorio:
> Didrik Madheden wrote:
>> On 30/06/07, Per von Zweigbergk <pvz at pvz.pp.se> wrote:
>>> Jag slogs för någon timme eller två sedan av en tanke. En riktigt
>>> kort version av en kodare från ISO-8859-1 till UTF-8.
>>>
>>> main(c){for(;c=~getchar();putchar(~c))c&128?:putchar(c>>6^63,c|
>>> =64);}
>> En sak jag inte fattar: Varför c|=64 med tilldelning? c|64 border väl
>> funka lika bra då c ändå skrivs över i nästa cykel?
>
> Andra parametern evalueras först.
>
> /David
Nja, första parametern evalueras först, iaf på mitt system. Om man
har ett system där andra parametern evalueras först, skulle man få
fel resultat, eftersom en vital bit ifrån c skulle kastas bort -- en
bit som påverkar uttrycket c>>6^63 -- nämligen den minst signifikanta
biten i det uttrycket.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.stacken.kth.se/pipermail/stacken/attachments/20070630/20f3601d/attachment.html
More information about the Stacken
mailing list