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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.67
n971030
163 / 95 / 1
Регистрация: 23.01.2010
Сообщений: 1,241
#1

Значение типа "char *" нельзя присвоить сущности типа "LPWSTR" - C++

22.02.2013, 21:05. Просмотров 2635. Ответов 5
Метки нет (Все метки)

значение типа "char *" нельзя присвоить сущности типа "LPWSTR"


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void AddColToListView(char *st, int sub, int size)
{
    LVCOLUMN lvc;
    lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
    lvc.iSubItem = sub;
    lvc.pszText = L"1";                 //-----------------> ошибка а надо вобще поставить st
    lvc.cx = size;
    lvc.fmt = LVCFMT_LEFT;
 
    ListView_InsertColumn(hListView_1, sub, &lvc);
    //ListView_InsertColumn(hListView_2, sub, &lvc);
 
}
помогите чего тут не работает.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.02.2013, 21:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Значение типа "char *" нельзя присвоить сущности типа "LPWSTR" (C++):

Значение типа "char *" нельзя присвоить сущности типа "LPWSTR" - C++
как исправить эту ошибку значение типа "char *" нельзя присвоить сущности типа "LPWSTR"

Error: значение типа "const char" нельзя присвоить сущности типа "double" - C++
#include <iostream> #include <iomanip>// using namespace std; void main(void) { const int k=5; int a=10; unsigned int...

МАССИВЫ: динамические мас.значение типа "int *" нельзя присвоить сущности типа "int" - C++
МАССИВЫ: динамические массива ОШИБКА:значение типа "int *" нельзя присвоить сущности типа "int" #include <iostream> using...

Ошибка преобразования: значение типа "float *" нельзя присвоить сущности типа "float" - C++
Помогите исправить.Значение типа "float *" нельзя присвоить сущности типа float void Mode2() { const int n=20,m=20 ; float a, b;...

Ошибка: "Значение типа float нельзя присвоить сущности типа int" - C++
При компиляции в Visual C++ получается такая ошибка: "Значение типа float нельзя присвоить сущности типа int". Восьмая строка #include...

Значение типа "void" нельзя использовать для инициализации сущности типа "int" - C++
Не понимаю, почему компилятор считает, что s.pop() это значение типа "void".. он же вернет этот удаляемый элемент? Как исправить? void...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Jupiter
Каратель
Эксперт С++
6554 / 3975 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
22.02.2013, 21:07 #2
C++
1
2
3
#include <tchar.h>
...
lvc.pszText = _T("1");
0
n971030
163 / 95 / 1
Регистрация: 23.01.2010
Сообщений: 1,241
22.02.2013, 21:14  [ТС] #3
Цитата Сообщение от Jupiter Посмотреть сообщение
C++
1
2
3
#include <tchar.h>
...
lvc.pszText = _T("1");
А не подскажите как st подставить и вообще не понимаю как работать в С со строками. Точнее я знаю что представляет из себя char (тип для представления одного символа) а вот допустим мне надо присвойить строку напрмер аналог на delphi

string a, b, с;

a := 'Это первая строка';
b := 'Это вторая строка'

с:= a+b;
0
Croessmah
Эксперт CЭксперт С++
13228 / 7500 / 845
Регистрация: 27.09.2012
Сообщений: 18,419
Записей в блоге: 3
Завершенные тесты: 1
22.02.2013, 21:18 #4
C++
1
2
3
4
std::string a,b,c;
a="My ";
b="string";
c=a+b;
Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
char a[1024];
char b[1024];
char c[2048];
strcpy(a,"My ");
strcpy(b,"string");
strcpy(c,a);
strcat(c,b);
0
Wolkodav
604 / 457 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
22.02.2013, 23:44 #5
Вы как-то в начале хорошему научились, а потом решили про С-строки вспомнить...
0
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,925
Записей в блоге: 1
22.02.2013, 23:51 #6
Цитата Сообщение от Wolkodav Посмотреть сообщение
а потом решили про С-строки вспомнить...
С-строки как раз-таки хороши. Они напоминают тебе, что ты работаешь не в абстрактном вакууме, а на вполне реальной машине, занимая конкретную память, где строка это не некий "объект", а область памяти, с которой ты можешь делать всё что пожелаешь! Всё что можно и нельзя.

По теме: в Visual Studio следует настроить проект на использование однобайтных строк. Меню>Project>Properties>Configuration Properties>General>Character Set
выставить
Use Multi-Byte Character Set
Возможно, в разных студиях путь к этой строчке слегка отличается
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.02.2013, 23:51
Привет! Вот еще темы с ответами:

Значение типа "int*" нельзя присвоить сущности типа int - C++
#include &lt;iostream&gt; using namespace std; int sort(int k, int p, int b, int n) { int min = 0; // для вставки задач int sum;...

"Значение типа float* нельзя использовать для инициализации сущности типа float" - C++
#include &lt;math.h&gt; #include&lt;iostream&gt; #include &lt;iomanip&gt; #include&lt;conio.h&gt; using namespace std; ...

Аргумент типа "unsigned char*" несовместим с параметром типа "const char*" - C++
int f(unsigned char s, unsigned char q) { N = strlen(s); //Ошибка тут... M = strlen(q); //...и тут Как исправить?

Ошибка аргумент типа "char" несовместим с параметром типа "LPCSTR" - C++
char result; result=printf(&quot;%d %d&quot;, &quot;test.php?id=&quot;,id); HINTERNET hHttpRequest = HttpOpenRequest( hHttpSession, &quot;GET&quot;, result,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
22.02.2013, 23:51
Ответ Создать тему
Опции темы

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