Форум программистов, компьютерный форум, киберфорум
Наши страницы

Проблема с указателем на строку - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ создать систему имитационного моделирования http://www.cyberforum.ru/cpp-beginners/thread575112.html
движение физического объекта под действием силы тяжести, не бесплатно конечно, за условиями в личку
C++ Строки на С++ /* Задание 1 Напишите программу с меню, которая конвертирует заданную строку любой длины, как показано ниже: a) В ВЕРХНЕМ РЕГИСТРЕ b) в нижнем регистре c) С Заглавной Буквы(каждое... http://www.cyberforum.ru/cpp-beginners/thread575107.html
Ошибка при компиляции: "List index out of bounds (0)" C++
При компиляции выдается следующее сообщение. Среда:C++ Bulder 6 void __fastcall TForm1::FormCreate(TObject *Sender) { GIS->Open(GisSamplesDataDir()+"map2.ttkgp",false) ; }...
C++ коды символов
Реализую алгоритм шифрования RSA, получаю код символа привидением к int, т.е. у английской A код 65, а у русской А -64, потому что в ASCII только 255 символов, но мне для реализации нужны только...
C++ обработка файлов http://www.cyberforum.ru/cpp-beginners/thread575080.html
дан текстовый файл. получить строку, в которой минимальное число слов.
C++ Button создает: combobox, textbox Собственно, есть 2 кнопки. Одна кнопка должна добавлять меню, другая - удалять последнее созданное. Изображение Вот при нажимании на +, создается еще 1 строка: icon, menu name, action. Ну и,... подробнее

Показать сообщение отдельно
Герц
524 / 341 / 4
Регистрация: 05.11.2010
Сообщений: 1,077
Записей в блоге: 1
15.05.2012, 14:32
Toshkarik, не осилил, что ты написал.
Не вижу здесь никакого выделения памяти под char* FirstSymbol, но очевидно, что выделяется ровно столько, символов, сколько нужно для хранения строки, переданной в InputString. Таким образом, вы пытаетесь добавить +1 символ к строке, не выделяя под него место, выходите за границы символьного массива, нарушаете права доступа.
Несколько советов:
1. Это не функции, это методы, в крайнем случае - функции-члены.
2. Давайте полям класса префиксы для быстрой идентификации в коде, то есть не FirstSymbol, а например m_firstSymbol (m от Method).
3. В том стиле именования, которого Вы, видимо, хотели придерживаться, принято давать классам имена, начинающиеся с заглавной буквы и в верблюжьем стиле, String в данном случае верно название. А вот методам и полям класса - с прописной буквы, тоже в верблюжьем стиле: не GetLengthString, а getLengthString.
P.S. Пока печатал, появилась куча новых сообщений.
Вам каждый раз нужно будет при добавлении или удалении символов/подстроки пересоздавать таким образом массив.
Все же стоит как-то заранее резервировать несколько лишних байт под символы, каждый раз пересоздавать массив и копировать - не лучший вариант.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.