Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Почему Editbox не переводит строку

9.0K
22 июля 2005 года
Egorgiy
7 / / 09.04.2005
Такая проблема с MS C++:
У меня на форме имеется EDITBOX
В него ввожу такую строку:"\x80\x3f\x3f\x80\x00\x00"
что должно соответствовать шестнадцатеричному: 80 3F 3F 80 00 00
Но на практике из EDITBOX'а получаю {"\x80\x3f\x3f\x80\x00\x00"}

////////////
char *Pat;
Pat=m_Pattern;
///////////////

m_Pattern - CString EDITBOX'а
Pat в итоге равно {"\x80\x3f\x3f\x80\x00\x00"}

если же
//////////////
char *Pat;
CString sPat;
sPat="\x80\x3f\x3f\x80\x00\x00";
Pat=sPat;
//////////////
то все нормально, т.е:
Pat= типа 80 3F 3F 80 00 00

но сдесь я задал \x80\x3f\x3f\x80\x00\x00 не из EDITBOX'а, а из кода проги.

Где теряется перевод строки в шестнадцатеричную?
Как с этим справиться?
406
23 июля 2005 года
vitaly2003s
481 / / 27.07.2004
Цитата:
Originally posted by Egorgiy
Такая проблема с MS C++:
У меня на форме имеется EDITBOX
В него ввожу такую строку:"\x80\x3f\x3f\x80\x00\x00"
что должно соответствовать шестнадцатеричному: 80 3F 3F 80 00 00
Но на практике из EDITBOX'а получаю {"\x80\x3f\x3f\x80\x00\x00"}

////////////
char *Pat;
Pat=m_Pattern;
///////////////

m_Pattern - CString EDITBOX'а
Pat в итоге равно {"\x80\x3f\x3f\x80\x00\x00"}

если же
//////////////
char *Pat;
CString sPat;
sPat="\x80\x3f\x3f\x80\x00\x00";
Pat=sPat;
//////////////
то все нормально, т.е:
Pat= типа 80 3F 3F 80 00 00

но сдесь я задал \x80\x3f\x3f\x80\x00\x00 не из EDITBOX'а, а из кода проги.

Где теряется перевод строки в шестнадцатеричную?
Как с этим справиться?



Локальные вырожения типа sPat="\x80\x3f\x3f\x80\x00\x00";
Это Escape Sequences выражения которые интерпретируются еще на стадии компиляции твоего кода и преобразуются в шестнадцатиричные числа,а то что у тебя есть в эдитбоксе и затем когда ты его получаеш возвращяет просто набор байтов так как они там написаны не используя никаких преобразований.

12K
10 августа 2005 года
Automat
7 / / 10.08.2005
Для перевода строки необходимо вывести последовательно два символа (аск-коды соответственно)13 и 10 (конец строки и перевод каретки). Я тоже очень долго мучался, но потом разобрался.
406
10 августа 2005 года
vitaly2003s
481 / / 27.07.2004
Цитата:
Originally posted by Automat
Для перевода строки необходимо вывести последовательно два символа (аск-коды соответственно)13 и 10 (конец строки и перевод каретки). Я тоже очень долго мучался, но потом разобрался.



А при чем тут перевод коретки,почитай внимательнее о чем человек пишет.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог