Re: Кодировка
От: AleksandrN Россия  
Дата: 14.05.09 07:17
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте уважаемые господа!

А> Я хочу спросить знающего человека по кодировке LINUX .
А> Я тут своял некую тестовую приблуду которая выводит слегка непонятные результаты своей работы .
А> Если не трудно обьясните мне, что тут с кодировкой.


А>
А>  char* instr ; 
А>        instr = "русские" ; // входные данные память под них выделена раньше. 
А>

Копирование строк производится функцией strcpy.

А>
А>    Buffstr = new char[strlen(instr)]  ;
А>    Buffstr = instr ;
А>

Ты выделяешь память под Buffstr, но потом присваиваешь указателю другой указатель. Это приведёт к утечке памяти и падению при освобождении памяти.

А>
А>  // перекодировка в другую кодировку пока не ясно в какую
А>    for(int i=0; i<strlen(Buffstr);i++)
А>    {
А>        cout << (long int)Buffstr[i] << endl ;
А>    }
А>    cout << Buffstr << endl ;  
А>

Тут не происходит перекодировки.

А>Прога выводит вот такие данные :

А>-47
А>-128
А>-47
А>-125
А>-47
А>-127
А>-47
А>-127
А>-48
А>-70
А>-48
А>-72
А>-48
А>-75
А>русские
А>
А>Мне очень интересно почему русские буквы тут представлены двумя числами, какая это может быть кодировка и можно ли свести их к одной цифре?

Сохрани исходник не в UTF-8, а в другой кодировке.

P.S. при вставке C-кода, заключай его внутри тега форматирования ccode.
P.P.S. А зачем несколько очень похожих тем?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.