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

возвращаю указатель на строку пишет кракозяблы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Напишите, скомпилируйте и выполните программу, которая выводит перечень аргументов командной строки в обратном порядке http://www.cyberforum.ru/cpp-beginners/thread835478.html
Задание Напишите, скомпилируйте и выполните программу, которая выводит перечень аргументов командной строки в обратном порядке. Доработайте программу так, чтобы второй цикл while выводил лесенку...
C++ Почему нельзя так объявить двумерный массив? Ошибка возникает если для массива tempArray при объявлении(и одновременной инициализации) использовать переменную(size) которую принимает функция. Если массив не инициализировать(или использовать при... http://www.cyberforum.ru/cpp-beginners/thread835458.html
C++ Проблемы с классами при поиске обратной матрицы
Доброго времени суток! Задача такова. Необходимо создать класс, который создавал бы матрицу заданного размера (квадратную), рассчитывал её определитель и находил обратную матрицу. Нашёл необходимые...
Элементарная графика (Dev C++) C++
Подскажите как поменять цвет(заливку, а не контур(линию)) квадрата (вписанного в окружность-вдруг это важно)с использованием graphics.h (среда- dev cpp)?
C++ Изменение части текста http://www.cyberforum.ru/cpp-beginners/thread835423.html
Здравствуйте, кто-нибудь знает с помощью какого инструмента в Windows Form Application (Label, TextBox и т.д.) можно обеспечить изменение цвета, или какое либо другое форматирование только части...
C++ Ошибка после закрытия формы Как можно избавиться от этой ошибки? подробнее

Показать сообщение отдельно
freeax
2 / 2 / 1
Регистрация: 19.09.2012
Сообщений: 136
17.04.2013, 10:00  [ТС]
Цитата Сообщение от Toshkarik Посмотреть сообщение
freeax, как я понял, CharToOem это макрос, когда включен Unicode в проекте, в него подставляется функция для работы с wide-строками ( wchar_t ), при отключении Unicode, подставляется функция для простых строк ( char ).
Сейчас глянул, при выключенном Unicode вызывается та же CharToOemA().
Так что вряд ли что то изменится в работе.
Просто копировать строку пробовали?
Да, включил Unicode

вместо
OemToChar(app.m_modems[i].m_lineName.c_str(), (LPWSTR)pModems->name);
написал
strcpy_s(pModems->name, app.m_modems[i].m_lineName.c_str());

при вызове myDllGetModems(modems, &num); в pModems->name символ "H" и больше ничего

короче говоря запутался совсем, не могу понять почему с юникодом не пашет

с memcpy(pModems->name,app.m_modems[i].m_lineName.c_str(),app.m_modems[i].m_lineName.size()); та же история (при вызове myDllGetModems(modems, &num); в pModems->name символ "H" и больше ничего)

Добавлено через 6 минут
но если в библе меняю указатель строки на константу:

C++
1
memcpy(pModems->name,"",strlen("Nothing"));
то при вызове myDllGetModems(modems, &num); в pModems->name Nothing все нормально...

видимо что-то с app.m_modems[i].m_lineName не то...
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru