setlocale r0

Discussion in 'WASM.NT.KERNEL' started by Proj, Oct 19, 2011.

  1. TermoSINteZ

    TermoSINteZ Синоби даоса Staff Member

    Blog Posts:
    2
    Joined:
    Jun 11, 2004
    Messages:
    3,568
    Location:
    Russia
    qqwe
    Не , вы просто уходите от ответа, на четко поставленный вопрос. За сим, с вами беседу завершаю.
     
  2. Rel

    Rel Well-Known Member

    Blog Posts:
    2
    Joined:
    Dec 11, 2008
    Messages:
    5,317
    я чет не понял... чего вы привязались... qqwe все правильно расписал, представил верную юникод таблицу... русские символы действительно находятся в четвертом секторе таблицы (в диапазоне от 0410 до 044F)... это вполне себе легко и просто транспортируется в 1251, поскольку и там и там диапазоны непрерывны:
    Code (Text):
    1. char FromUnicodeTo1251(wchar_t Ch) { return (char)(Ch - 0x1004 + 192); }
    для непонятливых 0x1004 - это буква "А" в юникоде, 192 - буква "А" в WINDOWS-1251... так чего привязались то?)
     
  3. qqwe

    qqwe New Member

    Blog Posts:
    0
    Joined:
    Jan 2, 2009
    Messages:
    2,914
    какой уход от ответа?? по ссылке в #10 качаем пдф с таблицей уникода для кириллицы. прямо на 1й странице видим таблицу. большие буквы от "А" до "Я" по алфавиту имеют коды от 0x0410 до 0x042f. маленькие буквы от "а" до "я", снова по алфавиту, опять имеют коды от 0x430 и до 0x044f. дополнительные буквы поискать тоже по таблице. или есть еще дополнительные области для других кириллических шрифтов и начертаний (например, церковнославянского). подробности в википедии

    перекодировать можно табличкой, а можно отнять - прибавить. я даже не знаю что тут можно написать еще чтоб не было обиды за разжевывание элементарной вещи как.. хм.. ну вы ж таки не дурак. зачем подстрекаете?
     
  4. TermoSINteZ

    TermoSINteZ Синоби даоса Staff Member

    Blog Posts:
    2
    Joined:
    Jun 11, 2004
    Messages:
    3,568
    Location:
    Russia
    qqwe
    Потому, что я конкретно задал вопрос "Где находится данная таблица?" . Или вы ее предлагаете таскать с собой в драйвере?
     
  5. qqwe

    qqwe New Member

    Blog Posts:
    0
    Joined:
    Jan 2, 2009
    Messages:
    2,914
    TermoSINteZ
    ? имеется в виду "#define U2A(c) (HiWord(c) == 0 ? c & 0x7f : HiWord(c) == 4 ? c - 1040 + 'A' : '?')" , эту таблицу?
     
  6. TermoSINteZ

    TermoSINteZ Синоби даоса Staff Member

    Blog Posts:
    2
    Joined:
    Jun 11, 2004
    Messages:
    3,568
    Location:
    Russia
    Тогда эт уже не таблица. Вы уж определитесь.
     
  7. Rel

    Rel Well-Known Member

    Blog Posts:
    2
    Joined:
    Dec 11, 2008
    Messages:
    5,317
    да... я кстати облажался в своем варианте))) там же сетевой порядок байт)))

    придрался ни к чему...
     
  8. TermoSINteZ

    TermoSINteZ Синоби даоса Staff Member

    Blog Posts:
    2
    Joined:
    Jun 11, 2004
    Messages:
    3,568
    Location:
    Russia
    Rel
    При чем тут придрался. Сказали вначале таблицу. А потом говорите совсем о другом. А яж ничего не требовал даже, просто объяснить по человечески.
     
  9. qqwe

    qqwe New Member

    Blog Posts:
    0
    Joined:
    Jan 2, 2009
    Messages:
    2,914
    таблица будет нужна для какой нибудь хитрой перекодировки. например, если как результат нужно будет чтоб большие-маленькие стояли вперемешку - "АаБб..." или сгруппировать или переставить спецсимволы или доп буквы. это зависит от подробностей задачи.