nixp.ru v3.0

22 октября 2017,
воскресенье,
05:55:02 MSK

DevOps с компанией «Флант»
JTOne написал 11 октября 2006 года в 20:34 (963 просмотра) Ведет себя неопределенно; открыл 6 тем в форуме, оставил 4 комментария на сайте.

Я столкнулся с такой проблемой мне нужно, ввести параметры для функции, и эти параметры должны быть типа wchar_t *, когда я ввожу просто через кавички — «параметр», выдает ошибку, так же и с char *, я как то раньше эту проблему решал, но забыл как я это делал!

Подскажите, может кто знает? За рание благодрен

P.S.: пишу на сибилдере!

myst

Под UNIX?!

Feuerbach


#include 
int main()
{
      printf("%d %d\n", (int)sizeof(char), (int)sizeof(wchar_t));
      return 0;
}

У меня выдает «1 4».

А теперь подумай, как указатель на char будет приводиться к указателю на wchar_t.

rgo
Feuerbach

#include 
int main()
{
      printf("%d %d\n", (int)sizeof(char), (int)sizeof(wchar_t));
      return 0;
}

У меня выдает «1 4».

А теперь подумай, как указатель на char будет приводиться к указателю на wchar_t.

ну дык надо писать строковый литерал так, чтоб он и парсился как wchar_t* ;)

надо писать так:

wchar_t *wstr = L"wchar_t string";


Правда русский текст я не смог таким образом загнать в gcc. он по ходу не умеет просто. Но ascii нормально входят.

metal

вообще в описании libc этому уделена целая глава,надо ее просто прочитать, там все написано.

decvar

use Glib::ustring