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
============================================================================