Форум программистов, компьютерный форум CyberForum.ru

Unicod - C++

Восстановить пароль Регистрация
 
Tiga
 Аватар для Tiga
3 / 3 / 3
Регистрация: 24.05.2011
Сообщений: 39
04.11.2011, 01:00     Unicod #1
Доброго времени суток.
Подскажите кто знает достойный материал(возможно книги) по использованию юникода в срр приложениях. Об LPWSTR WCHAR и тд. С юникодам ранее практически не работал, а найти полной и исчерпывающей информации так и не получилось, в книгах которые изучал применялся acsi.
Со string, *char уж давно разобрался, а тут начал изучать винапи (по Петзольдсу) и все бы хорошо, да работаю в Студии 2010, а там и самые обычные функции типа текстоут требуют именно юникод строки.
Кое как что то написать и получается, но то, что вроде как с acsi сделал бы за 2-3 строки кода, тут с юникодом выходит строк на 7.
Посоветуйте кто что может.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2011, 01:00     Unicod
Посмотрите здесь:

C# Перевести unicod в читаемые символы
Microsoft Visual Studio 2010 (rus) настройка unicod C++
Какой unicod у номера? C++
Какой unicod у конъюнкции?
Перевод Unicod в UTF08 C++ Builder
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
TwiX
59 / 59 / 1
Регистрация: 27.10.2011
Сообщений: 189
04.11.2011, 03:41     Unicod #2
Цитата Сообщение от Tiga Посмотреть сообщение
acsi
Может, ANSI?

Цитата Сообщение от Tiga Посмотреть сообщение
а там и самые обычные функции типа текстоут требуют именно юникод строки.
Цитата Сообщение от Tiga Посмотреть сообщение
Посоветуйте кто что может.
Можно отключить поддержку юникода (либо #undef UNICODE, либо в настройках проекта, что было бы умнее). Можно руками дописывать постфикс А в конец функции:
MessageBox -> MessageBoxA
Можно работать с ANSI, а потом просто приведение типов использовать.

Цитата Сообщение от Tiga Посмотреть сообщение
Со string, *char уж давно разобрался, а тут начал изучать винапи
Так Unicode это тот же ANSI, только на один символ приходится в два раза больше места. Есть wstring, wchar
Bers
Заблокирован
04.11.2011, 04:25     Unicod #3
http://wm-help.net/books-online/prin.../59464-13.html
Tiga
 Аватар для Tiga
3 / 3 / 3
Регистрация: 24.05.2011
Сообщений: 39
04.11.2011, 06:58  [ТС]     Unicod #4
Огромное спасибо.
И на последок не подскажите функции приведения типов из double к юникод строке.
А то подобные функции нашел только для ansi
PB
Просто прогер
1277 / 1064 / 11
Регистрация: 13.03.2009
Сообщений: 2,502
04.11.2011, 13:44     Unicod #5
Цитата Сообщение от TwiX Посмотреть сообщение
Может, ANSI?
Не, скорее, ASCII.
Mustik
56 / 56 / 2
Регистрация: 10.07.2011
Сообщений: 229
04.11.2011, 14:17     Unicod #6
Цитата Сообщение от Tiga Посмотреть сообщение
Огромное спасибо.
И на последок не подскажите функции приведения типов из double к юникод строке.
А то подобные функции нашел только для ansi
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <windows.h>
#include <iostream>
#include <tchar.h>
 
 
#define UNICODE
 
using namespace std;
 
 
int main()
{
    TCHAR buf[20];
    double var = 2.1234567;
 
    _stprintf_s( buf,TEXT("%.3f"),var );
    
    cout << buf << endl;
 
 
    return 0;
}
#include <tchar.h> - функция определена здесь

добавлено через пару минут
Так, не пашет че-то. Сча заменю функцию

Добавлено еще через пару минут
Так, все работает оказывается.
Yandex
Объявления
04.11.2011, 14:17     Unicod
Ответ Создать тему
Опции темы

Текущее время: 00:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru