On 2004-11-25 (Thursday) 12:19, Peter Pentchev wrote:
> On Thu, Nov 25, 2004 at 09:59:50AM +0200, Nikolay Mitev wrote:
> > ÐÐÑÐÐÐÐÑÐ
> > 
> > ÐÐÐÐÐ Ð ÐÐ ÐÐ ÑÐ ÐÐÐÐÑ, ÐÑÐÑÐÐÐ ÑÐ ÐÐÐÐÐ 
> > ÐÑÑÑÐÐÐÐ.
> [snip]
> 
> > ÐÐ ÐÐ ÐÐÐÐÑÐÐ, ÑÐ ÐÐÐÐ ÐÐ ÑÐ ÐÐÐÐÑÐÑÑÐ 
> > ÐÐÐÐÐ:
> > 
> > #include <stdio.h>
> > /*
> > (c) Skelet (G. Georgiev) in terms of GNU GPL
> > Converts cp1251 -> DOS cyrillic.
> > */
> > 
> > int main()
> > {
> > unsigned char w;
> > unsigned char First = 0xc0;
> > unsigned char Last  = 0xff;
> > while (!feof(stdin)) {
> >   w = getchar();
> >   if ((w >= First) && (w <= Last)) w -= 64;
> >   putchar(w);
> > }
> > return 0;
> > }
> 
> ÐÐÐÐÐÐ.. Ð ÐÐÐ ÐÐ ÐÑÐÐÐ ÐÐ ÑÐ ÐÐÑÐÐÐÐ ÐÐÐ 
> ÐÐÑÐ ÑÐÐÐÐÐ, ÐÐÐ ÐÑÐ ÐÐÐÐ
> ÐÑÐÐÐÐ ÐÐÑÐ, ÐÐÐÑÐ ÑÐ ÐÐÐÐÐ ÐÐÑÑÐ ÑÐÑÑÐ Ð 
> ÑÐÐÐÐÐ ÐÑÐÐÑÐÐÐÐ :)  ÐÐ
> ÐÑÐÐÑÐÐ Ð C getchar() ÐÐÐÐÑÐ ÐÐ ÐÑÑÑÐ ÑÐÐÐÐÐ 
> (char), Ð ÑÐ ÐÑÑÑÐ ÑÑÐÑÐÐ
> ÐÑÑÐÐÑÐÐ ÑÑÐÐ ÑÐÑÐÐ ÑÑÑ ÐÐÐÐ (ÐÐÐÐÐ int).  
> ÐÐÐÐ ÐÐÐÐ ÐÐ ÑÐ ÐÐÐÐÐÐÐÐ ÐÐ
> ÐÐÑÐÑÑÑÐÑÐÐÐ/ÑÑÐÐÑÑÐÐÐÐ ÐÐ ÐÐÐÐÐÐÑ ÑÐÐÑÐ 
> Ð ÑÐÐÐ ÐÑÐÐÑÐÐÐÐ, ÐÐÐÑÐ Ð ÐÑÐ
> ÐÑÑÐÐ ÐÑÑÐÐ, ÐÐÑÑÐ ÑÐÑÐ ÑÐÐÐÐÐ ÐÐ ÑÐÐÐÐÐ:
> 
>   int w;
>   while ((w = getchar()) != -1) {
>     if (...)
>       w -= 64;
>     putchar(w);
>   }

ÐÐÐÐÐ ÐÐ ÐÐ ÐÐÐÑÐÐÐÐ Ð ÐÐÑÐÐÑÐÑÐÐ, ÐÐÐÐÐÐ Ð 
ÐÑÐÐÐÐÐ ÑÐ ÐÐÐÐÐÐÐÐÐÑÐ ÐÐ 64
Ð ÐÐÑÐÑÐÐÐÐ 192..255 ÑÐÐÐÑ 6-ÑÐ ÐÐÑ, Ð 
ÐÐÐÐÐÑÐÐÑÐ ÐÐ 64 ÐÑÐ ÐÐÑÐÑÐÐÐÐ
128..191 ÐÐ ÐÐÐÐÐ /ÐÐÑÐÑÐÐÑÐ ÐÐÐÐÐÑÑÐÑÐÐÐ/ :)

#include <stdio.h>
int main(void) { // MIK <=> CP-1251 encoding swap
    short int w; // GCC 3.4 reserves 2 bytes here, int is ok too
    while ((w = getchar()) != -1) { // more data?
        if (w > 127)   // are we in the 'cyrilic' area
            w ^= 64;   // bits... are the magic
        putchar(w);
    }
    return 0;
}

gcc -s -Os -Wall -o dos2win dos2win.c # 2992 bytes :)

-- 
Regards,
  Doncho N. Gunchev    Registered Linux User #291323 at counter.li.org
  GPG-Key-ID: 1024D/DA454F79                        http://pgp.mit.edu
  Key fingerprint = 684F 688B C508 C609 0371  5E0F A089 CB15 DA45 4F79
============================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers).
http://www.linux-bulgaria.org - Hosted by Internet Group Ltd. - Stara Zagora
To unsubscribe: http://www.linux-bulgaria.org/public/mail_list.html
============================================================================

Reply via email to