Сравнение переменных
Вариант типа: strcmp(mychar_var, cedit_var) разумееться не работает, нужно сначала как-то конвертировать.
Подскажите, плиз....
Цитата:
Originally posted by Denton
Нужно сравнить переменную типа const char * с CEdit.
Вариант типа: strcmp(mychar_var, cedit_var) разумееться не работает, нужно сначала как-то конвертировать.
Подскажите, плиз....
Нужно сравнить переменную типа const char * с CEdit.
Вариант типа: strcmp(mychar_var, cedit_var) разумееться не работает, нужно сначала как-то конвертировать.
Подскажите, плиз....
Переменная CEdit - это ничто. Есть текст в CEdit хранящийся. Необходимо использовать макрос над const char* для конвертации в TCHAR, а потом _tcscmp. Макрос по-моему A2T, возможно нужен вариант, который использует const, не помню как называется, посмотри в MSDN или в том же header, что и A2T, (вроде atlconv.h)
Я к контролу привязал переменную. И может можно как в Дельфи, через функцию.....?
Цитата:
Originally posted by Denton
Я к контролу привязал переменную. И может можно как в Дельфи, через функцию.....?
Я к контролу привязал переменную. И может можно как в Дельфи, через функцию.....?
что записано в control возвращает ф-ия m_edit.GetWindowText(*, *)
А что прописывать в качестве параметра ? ( m_edit.GetWindowText(???) )
char buf[100];
m_edit.GetWindowText(buf, 100);
Пишу следущее:
.........
char get_temp[100]
if(strcmp(mychar[1],m_edit.GetWindowText(get_temp,100))==0)
MessageBox("So, it's right");
..........
// mychar- массив со списком паролей(к примеру)...
Ругаеться что:
E:\VC\UV\UVDlg.cpp(117) : error C2664: 'void __thiscall CWnd::GetWindowTextA(class CString &) const' : cannot convert parameter 1 from 'char [100]' to 'class CString &'
char get_temp[100]
m_edit.GetWindowText(get_temp,100);
if(strcmp(mychar[1],get_temp)==0)
MessageBox("So, it's right");
2. но она ругается по другой причине. у GetWindowText есть 2 варианта
int GetWindowText( LPTSTR lpszStringBuf, int nMaxCount ) const;
void GetWindowText( CString& rString ) const;
если первый у тебя почему-то неработает (странно), тогда
CString get_temp;
m_edit.GetWindowText(get_temp);
if(strcmp(mychar[1],get_temp)==0)
MessageBox("So, it's right");