Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Глюк с символами 
:(
    Опции темы
Paradox
Дата 13.3.2003, 20:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1135
Регистрация: 18.11.2002
Где: Россия

Репутация: нет
Всего: 1



К строке CString str добавляю "\n"
Код
str = str + "\n";

Далее делаю так
Код
myedit.SetWindowText(str);

В результате вместо новой строки мне в конец текста добавляется некий символ типа Ъ
Че за глюк кто-нить знает и как его исправить


--------------------
---
PM MAIL WWW   Вверх
Alex101
Дата 13.3.2003, 21:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 891
Регистрация: 8.4.2002
Где: Москва

Репутация: нет
Всего: 10



Добавь в конец ноль - все будет нормально


--------------------
С уважением, А. Фролов.
PM MAIL ICQ   Вверх
Paradox
Дата 14.3.2003, 02:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1135
Регистрация: 18.11.2002
Где: Россия

Репутация: нет
Всего: 1



Alex101 если имеется ввиду добавить "\0" или '\0' то я по всякому попробовал - все равно ничего не получается...
Вот полный код
Код
void CExp1View::OnExp()
{
 CEdit& myEdit = GetEditCtrl();
 CString str = "string1";
 str +='\n';
 str += "string2";
 str += '\0';
 myEdit.SetWindowText(str);

}


В результате в окне вижу
Цитата
string1Ъstring2

вместо желаемого
Цитата
string1
string2


Причем глюк такой и дома и на работе на 6-ой и 7-ой студии confused.gif confused.gif confused.gif confused.gif confused.gif



--------------------
---
PM MAIL WWW   Вверх
Paradox
Дата 14.3.2003, 02:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1135
Регистрация: 18.11.2002
Где: Россия

Репутация: нет
Всего: 1



Кстати если вместо '\n' подставить например '\r' или '\t' эффект тот же confused.gif


--------------------
---
PM MAIL WWW   Вверх
DENNN
Дата 14.3.2003, 04:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



А не пробовал "\n" ? Все таки '\n'-озночает некий байт или набор байтов, а "\n"-это именно строка символов.
PM ICQ   Вверх
Baa
Дата 14.3.2003, 07:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2639
Регистрация: 12.4.2002
Где: Москва

Репутация: 8
Всего: 12



Да дело совсем не в этом... что есть \n? не задумывались? а зря...
это поможет:
Код

CString str = "Test1";
str += "\xD\xA";
str += "Test2";
GetDlgItem (IDC_EDIT1)->SetWindowText (str);



--------------------
"Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande
PM ICQ   Вверх
Paradox
Дата 14.3.2003, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1135
Регистрация: 18.11.2002
Где: Россия

Репутация: нет
Всего: 1



Baa спасибо....
Я так пробовал, но делал почему то "\x0D\x0A";


--------------------
---
PM MAIL WWW   Вверх
Alex101
Дата 14.3.2003, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 891
Регистрация: 8.4.2002
Где: Москва

Репутация: нет
Всего: 10



str=str+"\x0" - Нулевой символ,
А \n и \r тебе и дадут такие глюки, они вообще не нужны, посмотри, какой параметр передается.
В VS.NET уже такого делать самому не надо, т.е.
Код
CString str = "string1";
myEdit.SetWindowText(str);

Будет нормально выводиться, а так - добвляй только ноль - я в билдере так и делал, должно и VC++ такое помочь, вернее, поможет smile.gifsmile.gifsmile.gif



--------------------
С уважением, А. Фролов.
PM MAIL ICQ   Вверх
DENNN
Дата 14.3.2003, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



Baa Почему же у него
Цитата
например '\r' или '\t' эффект тот же
?
PM ICQ   Вверх
-=Baa=-
Дата 14.3.2003, 21:22 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Все правильно... у меня они тож в виде квадратиков отображаются...
Делаем консольное приложение и там выводим строку с \n \r \t и еще бог знает чем %)
И что же мы видим? Что все ок! Строка переносится, табуляция делается и т.д. Какие выводы? =)
  Вверх
DENNN
Дата 15.3.2003, 03:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



Никаких smile.gif
PM ICQ   Вверх
Baa
Дата 15.3.2003, 06:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2639
Регистрация: 12.4.2002
Где: Москва

Репутация: 8
Всего: 12



DENNN, енти управляющие символы токо для консоли годятся... вот smile.gif


--------------------
"Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande
PM ICQ   Вверх
Vaulter
Дата 15.3.2003, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: 2
Всего: 22



Paradox
а ничего прибавлять пробовал?


--------------------
PM MAIL WWW ICQ   Вверх
Paradox
Дата 15.3.2003, 14:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1135
Регистрация: 18.11.2002
Где: Россия

Репутация: нет
Всего: 1



Все пробовал... Ваа оказался прав
Все получилось, всем спасибо...


--------------------
---
PM MAIL WWW   Вверх
DENNN
Дата 16.3.2003, 01:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



Цитата
DENNN, енти управляющие символы токо для консоли годятся... вот 

А как тебе такой вариант:
AfxMessageBox ("First line\n Second line\nThird Line");

Или вот так:
CString ItemText="First\n Second\n Third\n\nEnd\n";
SetDlgItemText(IDC_EDIT1,(LPCTSTR)ItemText);

Значит все-таки не только для консоли?

P.S. На VC7 не проверял, возможно там дядя Билли опять "защиту от чайников" сделал tounge.gif

Это сообщение отредактировал(а) DENNN - 16.3.2003, 01:44
PM ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0546 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.