Функции меняют передаваемую им строку.
Для удобства возвращают указатель на передаваемую строку.
//из ДОС в Windows
char* Decode_DOS_to_Win(char * str)
{
unsigned char *cstr=str;//"unsigned" - чтоб избежать предупреждений комп-ра
for(; *cstr; cstr++)
{
if(*cstr>=128 && *cstr<=175)
*cstr+=64;
else if(*cstr>=224 && *cstr<=239)
*cstr+=16;
else if(*cstr==252)
*cstr=185;
}
return str;
}
//----------------------------------------------------
//из Windows в ДОС
char* Decode_Win_to_DOS(char * str)
{
unsigned char *cstr=str;
for(;*cstr;cstr++)
{
if(*cstr>=240)
*cstr-=16;
else if(*cstr>=192)
*cstr-=64;
else if(*cstr==185)
*cstr=252;
}
return str;
}
//----------------------------------------------------
|