Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 43

Динамическая память и строки

25.11.2012, 17:28. Показов 1366. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите пожалуйста , как выделить динамическую память под строку , а потом освободить её?
это будет что-то типа такого ...?
C++
1
2
3
char *p;
p=new char[50];
delete [] p;
Как это можно сделать , если нужно , например ,выделить память под строку , ввести строку с клавиатуры а потом удалить память ?

Заранее спасибо за помощь !
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.11.2012, 17:28
Ответы с готовыми решениями:

строки и динамическая память
определить количество слов в строке, начинающихся с заданной пары символов. Строка размещается в динамической памяти

Динамическая память (строки), деструктор
Привет. Бьюсь уже час, помогите разобраться. Написал программу, в одной функции память выделил, в другой освобождаю. После выполнения...

Строки, динамическая память, обрезка строк
Доброго времени суток... Вот задача на дом 2. Показать на экран с m по n символов строки, введенной пользователем и записать данный...

10
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,534
Записей в блоге: 1
25.11.2012, 17:30
да, а что смущает?
0
 Аватар для v.a.l.i.d
425 / 390 / 113
Регистрация: 21.09.2012
Сообщений: 913
25.11.2012, 17:31
C++
1
2
3
4
5
6
7
char *p;
p=new char[50];
 
cout << "Введите строку: ";
cin.getline(p, 50);
 
delete [] p;
0
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 43
25.11.2012, 17:47  [ТС]
Цитата Сообщение от V.A.L.I.D Посмотреть сообщение
C++
1
2
3
4
5
6
7
char *p;
p=new char[50];
 
cout << "Введите строку: ";
cin.getline(p, 50);
 
delete [] p;
Cпасибо!
А если нужно сразу вписать строку , при её обьявлении , нельзя сделать так : ....?
C++
1
2
3
4
char *p;
p=new char[50]="введенная строка";
 
delete [] p;
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
25.11.2012, 17:52
_Vova_,
C++
1
char *s = "MyString";
1
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,534
Записей в блоге: 1
25.11.2012, 17:56
Цитата Сообщение от go Посмотреть сообщение
C++
1
char *s = "MyString";
А вот это совершенно другая вещь, нежели это.
Цитата Сообщение от _Vova_ Посмотреть сообщение
C++
1
p=new char[50]="введенная строка";delete [] p;
Строковый литерал s ты изменить не сможешь, а
строку p - вполне!
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
25.11.2012, 17:59
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
а
p - вполне!
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
p=new char[50]="введенная строка";
Скомпилить пробовали?
0
 Аватар для v.a.l.i.d
425 / 390 / 113
Регистрация: 21.09.2012
Сообщений: 913
25.11.2012, 17:59
C++
1
2
3
4
char *p;
p=new char[50]="введенная строка";
 
delete [] p;
вот так почему то ошибка появляется во время запуска. но компилируется
0
0 / 0 / 0
Регистрация: 04.11.2012
Сообщений: 43
25.11.2012, 18:00  [ТС]
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
А вот это совершенно другая вещь, нежели это.
Строковый литерал s ты изменить не сможешь, а
строку p - вполне!

Так как же мне тогда сделать так , чтобы использовать динам. память ? Мой вариант не работает (
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,534
Записей в блоге: 1
25.11.2012, 18:01
Цитата Сообщение от go Посмотреть сообщение
Скомпилить пробовали?
упс, не заметил, думал он вводит с клавиатуры строку после p=new char[50];

Добавлено через 46 секунд
Цитата Сообщение от _Vova_ Посмотреть сообщение
Так как же мне тогда сделать так , чтобы использовать динам. память ? Мой вариант не работает (
go уже сказал про ошибку.
C++
1
2
p=new char[50];
strcpy(p, "введенная строка");
Цитата Сообщение от go Посмотреть сообщение
Скомпилить пробовали?

Не по теме:

а что ответы на форуме надо компилировать? Я как-то тут редко виж.студию включаю для ответа

0
30.11.2012, 14:31

Не по теме:

Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Я как-то тут редко виж.студию включаю для ответа
А что, приготовленную еду надо пробовать?
Консоль - раз.
Онлайн-компиляторы и даже целые среды программирования - два.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.11.2012, 14:31
Помогаю со студенческими работами здесь

Азы: статическая память, динамическая память, автоматическая память
столько раз приходистя возвращаться к началу, и все благодаря моим преподавателям, которые не давали задавать вопросы на парах, а если это...

Статическая память,Динамическая память.
a) Статическая память. Двумерный массив. Дан массив целых чисел. В массиве есть отрицательные числа. Определить координаты левого нижнего...

Динамическая память
Дано натуральное число n и целые числа{a}_{1},{a}_{2},...,{a}_{n}. Выяснить, есть ли среди цифр {a}_{1},{a}_{2},...,{a}_{n}совпадающие и...

Динамическая память
в чем ошибка #include &lt;iostream&gt; #include &quot;conio.h&quot; using namespace std; class{A int a; double b; char s; }

Динамическая память
Надо ввести массив из файла. Сам массив хранится в динамической памяти. Сколько я над прогой не бился, а вводит данные криво. С...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru