Перейти к содержанию

wchar_t text1[] сложение строк c++


Рекомендуемые сообщения

Как сложить два массива wchar_t text1[] и wchar_t text2[] ?
Как пытался делать я :
 

wchar_t text1[] = L"12\0";	
wchar_t text2[] = L"34\0";
wcscat_s(text1, (тут хз , какой параметр), text2);
wcout << text1<<  endl;

Какой второй параметр нужно указывать ? Я знаю , что size_t numberOfElements . Но как его узнать ?

Ссылка на комментарий
Поделиться на другие сайты

Второй параметр - размер принимающего буфера. То есть, в твоем случае ты не сможешь ничего прибавить, так как у тебя в text1 нет места для добавления символов.

А почему бы не заюзать std::string и не мучить себе голову?

Ссылка на комментарий
Поделиться на другие сайты

7 минут назад, Xipho сказал:

Второй параметр - размер принимающего буфера. То есть, в твоем случае ты не сможешь ничего прибавить, так как у тебя в text1 нет места для добавления символов.

А почему бы не заюзать std::string и не мучить себе голову?

String Не получится вывести в имя компонента WinApi :( 

Ссылка на комментарий
Поделиться на другие сайты

23 минуты назад, afro228offical сказал:

Я знаю , что size_t numberOfElements . Но как его узнать ?

ты должен его сам задать, например WCHAR buffer[1024];

wcscpy_s(buffer,1024,text1);
wcscat_s(buffer,1024-ARRAYSIZE(text1),text2);

 

  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

1 минуту назад, gmz сказал:

ты должен его сам задать, например WCHAR buffer[1024];

wcscpy_s(buffer,1024,text1);
wcscat_s(buffer,1024-ARRAYSIZE(text1),text2);

 

Так мне нужно не задавая размер или задавать по нужным размерам 

Изменено пользователем afro228offical
Ссылка на комментарий
Поделиться на другие сайты

Может написать свою функцию , типа  wcscat  ? :D
я уже свой wcslen написал
 

size_t amir(wchar_t amir[])
{
	int i = 0;
	for (i = 0; amir[i] != NULL ;i++ )
	{		
	}	
	return i;
}

 

Изменено пользователем afro228offical
Ссылка на комментарий
Поделиться на другие сайты

8 минут назад, afro228offical сказал:

Может написать свою функцию , типа  wcscat  ?

лучше тогда на mingw64 перейти :D

хм раньше вс просто предупр. генерила если без _s

  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

В 11.07.2016в16:22, afro228offical сказал:

String Не получится вывести в имя компонента WinApi :( 

А мсдн почитать внимательно никак? Например, у string есть метод с_str(). Читай про него.

Ссылка на комментарий
Поделиться на другие сайты

44 минуты назад, Xipho сказал:

А мсдн почитать внимательно никак? Например, у string есть метод с_str(). Читай про него.

И можно будет string перевести в wchar_t[] ?

Ссылка на комментарий
Поделиться на другие сайты

44 минуты назад, gmz сказал:

пхах ты все еще не можешь копирнуть строку? что за компиль?

 

Пишу в Microsoft Visual Studio 2015 ...

Ссылка на комментарий
Поделиться на другие сайты

Написал свою копию wcscat . Возникла другая проблема . Как DWORD перевести в wchar_t[] ? Или свой перевод писать ? :D

Изменено пользователем afro228offical
Ссылка на комментарий
Поделиться на другие сайты

1 час назад, afro228offical сказал:

Написал свою копию wcscat . Возникла другая проблема . Как DWORD перевести в wchar_t[] ? Или свой перевод писать ? :D

facepalm* покажи кусок где вс фейлит на wcscat +лог

Ссылка на комментарий
Поделиться на другие сайты

18 минуту назад, gmz сказал:

facepalm* покажи кусок где вс фейлит на wcscat +лог

Про DWORD отдельный вопрос , а wcscat уже не нужен , т.к. уже свою функцию сделал

Ссылка на комментарий
Поделиться на другие сайты

18 час назад, afro228offical сказал:

И можно будет string перевести в wchar_t[] ?

ты мсдн почитать-то хоть попробовал?

 

14 часа назад, afro228offical сказал:

Написал свою копию wcscat . Возникла другая проблема . Как DWORD перевести в wchar_t[] ? Или свой перевод писать ? :D

Эмм. А wsprintf тебе опять чем не угодил?

Ссылка на комментарий
Поделиться на другие сайты

23 минуты назад, Xipho сказал:

ты мсдн почитать-то хоть попробовал?

 

Эмм. А wsprintf тебе опять чем не угодил?

Да , почитал . Тут . Но с форматом не разобрался :( 

Ссылка на комментарий
Поделиться на другие сайты

По аналогии с этим:

wchar_t My_Little_String[100];
swprintf(My_Little_String, L"%d - %s", 24, L"piupiu");

Все функции printf работают одинаково.

Либо они выводят инфу в консоль (и тогда первый параметр является сразу форматом строки)

Либо они выводят инфу в строку (и тогда первый параметр всегда строка в которую будет писаться результат)

Изменено пользователем holy
  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

Ага , спасиб :) Но что значит этот формат ? %d - %s из целого числа в wchar_t ?

Изменено пользователем afro228offical
Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.