![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Ockonal |
|
|||
![]() Smile ![]() Профиль Группа: Участник Сообщений: 219 Регистрация: 9.7.2007 Где: Ukraine::Nikolaev ; Репутация: нет Всего: 3 |
Здравствуйте. Вот делаю:
int StrInt = strlen( StringOne ); char *StringTwo = new char[StrInt]; Есть у меня строка.. StringOne. По ней создаю StringTwo; Дальше в коде дописываю с помощью strcat( StringTwo, "Datas" ); Но в конце, когда вывожу StringTwo, У меня вначале куча знаков.. Что это может быть.. И ещё.. В одном месте мне в StringTwo нужно дописать число.. int b = 999; strcat( StringTwo, b ); Но так нельзя Пробывал: char tmp[2]; tmp[1] = '\0'; tmp[0] = b; strcat( StringTwo, tmp ); Но Выводит иероглиф ) --------------------
Ум заключается не только в знании, но и в умении прилагать знание на деле.Самое лучшее из всех доказательств есть опыт.Каждому человеку свойственно ошибаться, но никому, кроме глупца, несвойственно упорствовать в ошибке. |
|||
|
||||
| Maka6er |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 27.2.2007 Где: Киев Репутация: нет Всего: 3 |
Вы память под строку выделили но не инициализировали её — отсюда и непредвиденный результат (вначале куча знаков). Попробуйте так:
А про то как int в *char здесь: http://forum.vingrad.ru/forum/topic-189260...0%BA%D0%B8.html |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Ockonal, и используйте кнопку "Код", пожалуйста, когда постите. Всем легче будет.
|
|||
|
||||
| Ulysses4j |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 6.6.2007 Где: Ростов-на-Дону Репутация: 4 Всего: 10 |
Ну, это немножко высокопарно выглядит, учитывая что просто 0-байт нужен. Ockonal, все валидные С-строки должны завершаться 0-байтом. Т.о., чтобы получить строку, способную хранить до n-знаков, и пригодную для использования с функциями из <cstring> (<string.h>), нужно сделать так:
Это сообщение отредактировал(а) Ulysses4j - 28.1.2008, 02:50 -------------------- Communication is critical to the job of a programmer. C. Jazdzewski. Fatherly Advice To New Programmers |
||||||
|
|||||||
| NiJazz |
|
|||
![]() Jazz coder ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2286 Регистрация: 10.8.2003 Где: Москва Репутация: 1 Всего: 23 |
А можно так:
Если строка небольшая, то в данном случае и о delete заботиться не нужно. |
|||
|
||||
| Mayk |
|
|||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
а ещё из альтернатив есть такая штука как std::string. -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
| just_geek |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 309 Регистрация: 13.12.2007 Репутация: 2 Всего: 10 |
погляди в сторону itoa
|
|||
|
||||
| Mayk |
|
|||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
ещё раз пару слов про альтернативы дело не в том что я зануда, а в том что мне надо набить счетчик сообщений
-------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
| Ockonal |
|
|||
![]() Smile ![]() Профиль Группа: Участник Сообщений: 219 Регистрация: 9.7.2007 Где: Ukraine::Nikolaev ; Репутация: нет Всего: 3 |
Всем кто ответил - БОЛЬШОЕ СПАСИБО
--------------------
Ум заключается не только в знании, но и в умении прилагать знание на деле.Самое лучшее из всех доказательств есть опыт.Каждому человеку свойственно ошибаться, но никому, кроме глупца, несвойственно упорствовать в ошибке. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |