|
UNICODE в WinAVR |
|
|
|
Jul 31 2008, 11:04
|
Знающий
   
Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847

|
Цитата(777777 @ Jul 31 2008, 12:51)  Иногда?  ну-ну. Мне как раз и надо идентификатор USB-шный. Только я хочу назвать его по-русски. Для того юникод и придуман. И если этот крутой gnu-тый компилятр, которым так восхищаются виндовсоненавистники ограничивает свое знание юникода латинскими буквами, то... мне жалко этих несчастных фанатиков. Прежде чем возмущатся неплохо бы подумать что значит поддержка юникода и поместиться ли она во флеш AVR. А оскорблять людей (в том числе и теоретически существующих ненавистников) найдите другое место.
--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть. © Lewis Carroll. Alice's adventures in wonderland.
|
|
|
|
|
Jul 31 2008, 11:20
|

Начинающий профессионал
    
Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648

|
Цитата(amw @ Jul 31 2008, 15:04)  Прежде чем возмущатся неплохо бы подумать что значит поддержка юникода и поместиться ли она во флеш AVR. А оскорблять людей (в том числе и теоретически существующих ненавистников) найдите другое место. В добавление к amw. Неплохо бы посмотреть поддержку unicode в документации к компилятору  (ключи компилятора и режимы компиляции).
--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
|
|
|
|
|
Jul 31 2008, 12:19
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(amw @ Jul 31 2008, 13:04)  Прежде чем возмущатся неплохо бы подумать что значит поддержка юникода и .. Для начала автор описал, что он хочет - просто написать/описать одну юникодную стороку, напимер для последующего побайтного вывода. Для этого ни одного дополнительного бита в библиотеках не надо, поскольку о работе с такими cтроками речь не идет. Цитата(mdmitry @ Jul 31 2008, 13:20)  Неплохо бы посмотреть поддержку unicode в документации.. Да, возможно с помощю чего-либо типа указания кодовой страницы исходника удастся решить проблему.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jul 31 2008, 12:55
|

Профессионал
    
Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357

|
Цитата(amw @ Jul 31 2008, 15:04)  Прежде чем возмущатся неплохо бы подумать что значит поддержка юникода и поместиться ли она во флеш AVR. Поддержка юникода - это возможность компилятора генерить строки в юникодной кодировке, ни одного байта во флеше AVR для этого не требуется. И, увидев, что компилятор умеет транслиовать строку L"name" я справедливо решил, что он сможет оттранслировать и L"имя" - а иначе зачем тогда вообще поддержка префикса 'L'?! Оказалось - нет. Надеюсь, вы в состоянии представит мое разочарование. Это примерно то же, как увидеть на дороге кошелек с торчащими из него баксами, наклониться за ним, но тут мальчик, сидящий за кустом дергает за ниточку и вместе со своими друзьями начинает ржать. Или может все-такие есть какие-то ключи? Ведь кто-то из здесь присутствующих наверняка делал устройства, работающие через USB, неужени вы набивали имя шестнадцатеричными числами?
Сообщение отредактировал 777777 - Jul 31 2008, 12:59
|
|
|
|
|
Jul 31 2008, 15:06
|

Профессионал
    
Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357

|
Цитата(ukpyr @ Jul 31 2008, 17:57)  вообще-то WinAVR - это сборка GCC под Win, AVR-Libc к этому отношения не имеет Поэтому я пишу в этом разделе, а не в AVR Цитата(ukpyr @ Jul 31 2008, 17:57)  поэтому на счет поддержки UNICODE обратитесь к документации на GCC - ведь как-то работают другие программы с UNICODE  ... Ну да, в Visual Studio, например, ты просто берешь и пишешь:  И компилятор сразу все понимает без каких-то дополнительных ключей. В конце концов, юникод для того и придумывался, чтобы не думать о кодовых страницах! Цитата(ukpyr @ Jul 31 2008, 17:57)  есть там параметры -fexec-charset, -fwide-exec-charset, -finput-charset. Может тыкнете носом? У меня проблемы с поиском инфы в gcc-шной документации...  И, все-таки, вопрос к тем, кто делал USB-устройства: неужели вы набивали имя шестнадцатеричными числами?
Сообщение отредактировал 777777 - Jul 31 2008, 15:14
|
|
|
|
|
Jul 31 2008, 15:39
|
Знающий
   
Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484

|
Цитата(777777 @ Jul 31 2008, 19:06)  Ну да, в Visual Studio, например, ты просто берешь и пишешь:  И компилятор сразу все понимает без каких-то дополнительных ключей. В конце концов, юникод для того и придумывался, чтобы не думать о кодовых страницах! А вот Вы не поленитесь и подумайте, в какой кодировке сохранен этот файл? Случайно не в unicode? А Ваш .с файл (с L"Имя устройства";) в какой? В кодовой станичке 1251? И компилятор дожен сам угадать кодоваю страницу? А что будет этот файл тоже сохранить в unicode? Анатолий.
Сообщение отредактировал aesok - Jul 31 2008, 15:40
|
|
|
|
|
Jul 31 2008, 16:36
|
Профессионал
    
Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347

|
эти параметры описаны тут : http://gcc.gnu.org/onlinedocs/gcc-4.3.0/gc...ocessor-Options-finput-charset задает кодировку исходника, -fexec-charset - задает кодировку, используемую внутри программы для char строк (по умолчанию UTF-8), -fwide-exec-charset задает кодировку, используемую внутри программы для wchar строк (UTF-32/16). В какой кодировке у вас текст ?
Сообщение отредактировал ukpyr - Jul 31 2008, 16:45
|
|
|
|
|
Aug 1 2008, 06:44
|

Профессионал
    
Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357

|
Цитата(aesok @ Jul 31 2008, 19:39)  А вот Вы не поленитесь и подумайте, в какой кодировке сохранен этот файл? Случайно не в unicode? Не стоит считать всех идиотами. Разумеется в unicode. Только там для этого не приходится извращаться. Цитата(aesok @ Jul 31 2008, 19:39)  А Ваш .с файл (с L"Имя устройства";) в какой? В кодовой станичке 1251? И компилятор дожен сам угадать кодоваю страницу? Вообще-то нет икаких проблем чтобы угадать кодовую страницу. Простейший notepad позволяет сохранять текстовые файлы в любой кодировке и распознает ее при открытии. Цитата(aesok @ Jul 31 2008, 19:39)  А что будет этот файл тоже сохранить в unicode? Тогда он не будет распознаваться IDE-шным редактором. Да-да, я понимаю, она не имеет отношения к gcc. Один пришивает рукав, другой пуговицы. Только что делать юзеру? Похоже так и придется набивать имя в хексе. Цитата(ukpyr @ Jul 31 2008, 20:36)  эти параметры описаны тут : http://gcc.gnu.org/onlinedocs/gcc-4.3.0/gc...ocessor-Options-finput-charset задает кодировку исходника, -fexec-charset - задает кодировку, используемую внутри программы для char строк (по умолчанию UTF-8), -fwide-exec-charset задает кодировку, используемую внутри программы для wchar строк (UTF-32/16). Спасибо. Осталось выяснить, что писать после charset=... Там ссылаются на iconv library routine, а в ее хелпе никаких значений не приводится. Кстати, попробовал написать -finput-charset=1251, в результате получил: cc1.exe: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate.  ( Цитата(ukpyr @ Jul 31 2008, 20:36)  В какой кодировке у вас текст ? В той, которую понимает IDE, т.е. в ANSI. Других она не понимает.
Сообщение отредактировал 777777 - Aug 1 2008, 06:48
|
|
|
|
|
Aug 1 2008, 07:04
|
Знающий
   
Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484

|
Цитата(777777 @ Aug 1 2008, 10:44)  Осталось выяснить, что писать после charset=... Там ссылаются на iconv library routine, а в ее хелпе никаких значений не приводится. http://www.gnu.org/software/libiconv/CP1251 Это в последний раз когда я за вас думаю. Анатолий.
Сообщение отредактировал aesok - Aug 1 2008, 07:13
|
|
|
|
|
Aug 1 2008, 13:49
|
Знающий
   
Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484

|
Цитата(777777 @ Aug 1 2008, 11:43)  Здесь думать не надо, здесь надо уметь искать gnu-тую информацию, а это нелегко. Даже в MSDN при всей ее уродливости можно найти гораздо легче. www.google.com Анатолий.
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|