![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 03.07.2009
Сообщений: 16
|
![]()
Доброго всем дня!У меня возник вопрос по поводу конкатенации строк...
char name[255]; char path[255]; char* full_path; full_path = new char[strlen(name)+strlen(path)]; strcpy(full_path, path); strcat(full_path, name); и чего-то он не работает...размер выдает больше чем надо,а при выводе значения full_path на экран выводить только одну часть path, а дальше забивает буквой Н ![]() |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
![]()
все работает, может у вас не инициализируется переменная name?
посмотреть бы в программе на это... |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 03.07.2009
Сообщений: 16
|
![]()
Это я упростил, в программе немного по другому...там открывается окно и выбираются файлы...попробую поискать,может где-то что-то пропустил
![]() |
![]() |
![]() |
![]() |
#4 |
Заблокирован
Регистрация: 18.11.2007
Сообщений: 254
|
![]()
функции strcpy и strcat читают и зпамяти байты пока не встретят нулевой байт 00 ,, это говорит о том что строка закончилася. у вас в коде размер динамического массива равен strlen(name)+strlen(path) а места для нулевого байта нету. нужно добавить еденичку strlen(name)+strlen(path) + 1
поэтому |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Массив строк С++ | Nina+ | Помощь студентам | 1 | 01.04.2009 23:22 |
Матрица A состоит из 8 строк и 6 столбцов. вычесть из всех её строк, начиная со второй, первую строку | Dimak24 | Помощь студентам | 1 | 19.12.2008 15:45 |
Использование строк (С++) | Nattka | Общие вопросы C/C++ | 15 | 04.12.2008 21:10 |
Excel max 256 строк VS user надо 300 строк | Exo | Microsoft Office Excel | 3 | 10.01.2008 17:14 |
Сравнение строк | HOMER | Общие вопросы Delphi | 7 | 04.01.2008 05:53 |