Форум программистов, компьютерный форум CyberForum.ru

Строки - засорение памяти - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Разработать ППП «Определение собственных значений и собственных векторов матрицы» http://www.cyberforum.ru/cpp-beginners/thread589197.html
Разработать ППП «Определение собственных значений и собственных векторов матрицы» следующими способами: 1) методом Крылова; 2) методом Леверье-Фадеева; 3) методом Данилевского; 4) методом итераций.
C++ Структуру с именем ZNAK Необходимо сделать следующее: Разработать структуру с именем ZNAK, содержащую поля: • Фамилия, имя; • Знак Зодиака; • Дата рождения (массив их трёх чисел для хранения даты, месяца и го- да). Написать программу, выполняющую следующие действия: • Ввод с консоли данных в массив структур ZNAK; • Вывод на консоль информации о людях, родившихся в месяц, значе- http://www.cyberforum.ru/cpp-beginners/thread589183.html
дан файл с текстом C++
• в качестве библиотеки ввода-вывода необходимо использовать потоковую библиотеку ввода-вывода «iostream»; пространство имен std
В Одномерном массиве состоящем из n элементов C++
В одномерном массиве ,состоящем из n элементов , вычислить сумму модулей его элементов после первого нулевого элемента.
C++ Вывести таблицу степеней двойки http://www.cyberforum.ru/cpp-beginners/thread589158.html
Здравствуйте, нужна помощь в составлении программы, которая выводит таблицу степеней двойки (от нулевой до десятой). Ниже представлен рекомендуемый вид экрана во время работы программы: 0 1 1 2 2 4 3 8 4 16 5 32 6 64 7 128
C++ Разработать структуру с именем POINT Разработать структуру с именем POINT, содержащую поля: 1) Горизонтальная координата точки на плоскости. 2) Вертикальная координата точки на плоскости. Написать программу, выполняющую следующие действия: 1) Ввод с консоли координат вершин ломанной линии в массив структуры POINT. 2)Вычислить и вывести на консоль длину ломаной линии. подробнее

Показать сообщение отдельно
grizlik78
Эксперт С++
 Аватар для grizlik78
1887 / 1419 / 103
Регистрация: 29.05.2011
Сообщений: 2,967
28.05.2012, 18:26     Строки - засорение памяти
Цитата Сообщение от 33parrots Посмотреть сообщение
Вроде должно быть норм, угу?
Вроде да. Хотя накосячить и тут можно
Я имел в виду, что если где-либо используются строковые литералы, то они либо используются как константы, либо копирование неизбежно.

Добавлено через 4 минуты
Цитата Сообщение от 33parrots Посмотреть сообщение
Или кимпилятор по завершении функции main сам сделает удаление всего лишнего?
По завершении функции main — да, но не компилятор, а ОС освободит всю память.
Но если в цикле вызывать, например
C++
1
2
3
4
while (1)
{
    char *s = func1();
}
то программа быстро выжрет всю память и "скопытится", а так цикл будет бесконечным без последствий:
C++
1
2
3
4
5
while (1)
{
    char *s = func1();
    delete [] s;
}
Хуже когда вместо строк объекты (массивы объектов). Они могут запрашивать у ОС какие-нибудь ресурсы, которые автоматически не освобождаются даже после завершения программы.
 
Текущее время: 15:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru