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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.88
Alex90
19 / 19 / 1
Регистрация: 30.01.2009
Сообщений: 103
#1

как можно перевести `int*' to `UINT' - C++

05.02.2010, 11:40. Просмотров 2071. Ответов 3
Метки нет (Все метки)

Есть программа в которой нужно отмечать сохраненные пункт меню. Решил данные об отмеченых пунктах записывать в реестр, после запуска программа должна читать данные с реестра и отмечать их. Вот код чтения реестра

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
    HKEY hKey = 0;
    int buf[255] = {0};
    DWORD dwType = 0;
    DWORD dwBufSize = sizeof(buf);
    TCHAR szPath[MAX_PATH];
     
    const char* subkey = "Software\\my_app";
 
    if( RegOpenKey(HKEY_CURRENT_USER,subkey,&hKey) == ERROR_SUCCESS)
    {
        dwType = REG_SZ;
        RegQueryValueEx(hKey,"777",NULL, NULL, (BYTE*)buf, &dwBufSize);
 
        RegCloseKey(hKey);
 
        CheckMenuItem(hMainMenu, buf, MF_CHECKED);         
    }
}
Но компилятор пишет ошибку

invalid conversion from `int*' to `UINT'

по питался перевести

C++
1
2
int i;
i=(int)buf
но эффект тот же invalid conversion from `int*' to `UINT' как можно перевести `int*' to `UINT' или отметить пункт другим способом?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2010, 11:40     как можно перевести `int*' to `UINT'
Посмотрите здесь:

Написать прогу, которая подсчитывает макс. и мин. значения переменных (int, shorting, longint, uint, char, uchar), ещё указать размер в байтах - C++
Программа должна содержать функцию printf. Без функции std::count и т.п.

написать, прогу которая подсчитывает макс. и мин. значения переменных (int, shorting, longint, uint, char, uchar), ещё указать размер в байтах - C++
Написать желательно простейшим языком(без применения каких-то очень навороченных функций). Помогите, плиз

написать прогу, которая подсчитывает макс. и мин. значения переменных (int, shorting, longint, uint, char, uchar), ещё указать размер в байтах - C++
помогите плиз. желательно, чтобы программа была написана максимально простым способом

как перевести WORD в INT - C++
Всем привет. Продолжаю изучение WinApi. Возник такой вопрос. Я выделяю текст в EditBox , и получаю позиции выделенного текста таким...

Как перевести из char в int? - C++
нужно присвоить значение массива char A в int B, например B=A, но выбивает ошибку, пробовал B=atoi(&A); но выбивает другое число

Как перевести CString -ское число в Int? - C++
Есть CString -ское число. Как перевести это число в int??? Вот: { m_cap = m_cap + '1'; m_cap = c; int c = attol(m_cap); c =...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
05.02.2010, 12:14     как можно перевести `int*' to `UINT' #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
HKEY hKey = 0;
TCHAR buf[MAX_PATH];
DWORD dwType = 0;
DWORD dwBufSize = sizeof(buf);
TCHAR szPath[MAX_PATH];
     
const char* subkey = "Software\\my_app";
 
if( RegOpenKey(HKEY_CURRENT_USER,subkey,&hKey) == ERROR_SUCCESS)
{
    dwType = REG_SZ;
    RegQueryValueEx(hKey,"777",NULL, NULL, (BYTE*)buf, &dwBufSize);
    RegCloseKey(hKey);
    CheckMenuItem(hMainMenu, buf, MF_CHECKED);         
}
Alex90
19 / 19 / 1
Регистрация: 30.01.2009
Сообщений: 103
05.02.2010, 16:18  [ТС]     как можно перевести `int*' to `UINT' #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
HKEY hKey = 0;
TCHAR buf[MAX_PATH];
DWORD dwType = 0;
DWORD dwBufSize = sizeof(buf);
TCHAR szPath[MAX_PATH];
     
const char* subkey = "Software\\my_app";
 
if( RegOpenKey(HKEY_CURRENT_USER,subkey,&hKey) == ERROR_SUCCESS)
{
    dwType = REG_SZ;
    RegQueryValueEx(hKey,"777",NULL, NULL, (BYTE*)buf, &dwBufSize);
    RegCloseKey(hKey);
    CheckMenuItem(hMainMenu, buf, MF_CHECKED);         
}
invalid conversion from `TCHAR*' to `UINT'

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
HKEY hKey = 0;
TCHAR buf[MAX_PATH];
DWORD dwType = 0;
DWORD dwBufSize = sizeof(buf);
TCHAR szPath[MAX_PATH];
     
const char* subkey = "Software\\my_app";
 
if( RegOpenKey(HKEY_CURRENT_USER,subkey,&hKey) == ERROR_SUCCESS)
{
    dwType = REG_SZ;
    RegQueryValueEx(hKey,"777",NULL, NULL, (BYTE*)buf, &dwBufSize);
    RegCloseKey(hKey);
    int i;
    i=(int)buf;
    CheckMenuItem(hMainMenu, i, MF_CHECKED);         
}
Этот код компилируется, но пункт не отмечается
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2010, 20:11     как можно перевести `int*' to `UINT'
Еще ссылки по теме:

Как перевести из WCHAR в int не потеряв цифру 0? - C++
Мне нужно перевести номер месяца в тип WCHAR для того, чтобы вывести в окно. Если использовать _itow_s(mm,date,10), то 0 пропадает. Хотя,...

Как правильно перевести int и string в *char для записи в SQLlite? - C++
Доброго времени суток! Вопрос такой: Каким образом обычно переводятся значения типа int и string в SQL-запрос типа *char ? Вот...

Как можно перевести - C++
Как можно перевести Java на C++

Как перевести массив строк в массив int - C++
for (int i=0; i<str.size(); i++) { str=static_cast<int>(str); } есть vector <string> str; Оно не...

Как можно перевести фрагмент кода с паскаля в с++? - C++
begin j:=1; {номер первого блока} repeat write('( '); for i:=j to n do if blok=j then write(i, ' '); {если число і из блока...

Как можно перевести этот код с паскаля в с++? - C++
program razbienie_mnozhestwa(input,output); var i,j,k,n:byte;wper:arrayof boolean; sled,pred,blok:arrayof byte; procedure...


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

Или воспользуйтесь поиском по форуму:
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
05.02.2010, 20:11     как можно перевести `int*' to `UINT' #4
Alex90, buf - это массив из 260 двубайтных данных, int - 4 байта. Как вы думаете, что должно быть результатом такого кода?
C++
1
2
int i;
i = (int)buf;
На сколько я понял, то из реестра читается строка? Тогда я чего-то не понял и входной информации для меня недостаточно.
Второй вариант. В реестре значение ключа - цифра.
Тогда читаем наше значение. Приводим первые N(по разрядности числа) символов в десятичное число, которое и передаем в CheckMenuItem
Yandex
Объявления
05.02.2010, 20:11     как можно перевести `int*' to `UINT'
Ответ Создать тему
Опции темы

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