Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
fireresist
0 / 0 / 0
Регистрация: 26.11.2010
Сообщений: 14
1

Динамическое выделение памяти.

02.12.2010, 19:31. Просмотров 572. Ответов 4
Метки нет (Все метки)

Доброго времени суток.
Помогите, пожалуйста, решить задачу.
Задача тривиальна - поиск и замена подстроки. Суть в чем: необходимо реализовать динамическое выделение памяти, то есть строка может быть довольно большой. Никак не разберусь с malloc. Итак, когда если я задам, например, строку (char s[100]), то в тестах может встретиться строка большей длины. Как сделать так, чтобы этого не произошло.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2010, 19:31
Ответы с готовыми решениями:

Распределение памяти. Динамическое выделение памяти
an-1 an-2 ... a2

Динамическое выделение памяти
Подскажите как выделить динамически память мод двумерный массив... Спасибо....

Динамическое выделение памяти
Всем привет, читал про динам. выделение памяти и тут возник вопрос. Так как для...

Динамическое выделение памяти
Добрый день. Возник вопрос: Как мне узнать адрес последнего байта в...

Динамическое выделение памяти
Подскажите пожалуйста почему этот код работает: #include <iostream> using...

4
asics
Freelance
Эксперт С++
2854 / 1789 / 355
Регистрация: 09.09.2010
Сообщений: 3,841
02.12.2010, 20:01 2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
#include <malloc.h>
 
int main(void)
{
    int N;
    char *str;
    printf("enter n: ");
    scanf("%d", &N);//Задаем размер строки
    str = (char *)malloc(N*sizeof(char));
    //...
    return 0;
}
0
starikNAD
11 / 11 / 4
Регистрация: 01.12.2010
Сообщений: 88
02.12.2010, 20:16 3
попробуй такое (вчера мне помогли аналогично с двумерным массивом):
C
1
2
3
4
5
char *s;
int N,N1;
s = (char *) calloc(N, sizeof(char));
// если нужно увеличить размер массива
s=(char *) realloc(s,N+N1)
только проверь - попробовать сейчас не могу
0
fireresist
0 / 0 / 0
Регистрация: 26.11.2010
Сообщений: 14
03.12.2010, 01:05  [ТС] 4
да не, там размер входящей строки неизвестен.)
собственно, спасибо, снова уже додумался сам)
0
vani2
0 / 0 / 0
Регистрация: 05.12.2010
Сообщений: 20
10.12.2010, 19:19 5
Напиши как, мне очень самому нужно, спасибо заранее.
0
10.12.2010, 19:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.12.2010, 19:19

Динамическое выделение памяти
Пусть есть класс с полем char *p. Если для поля p выделяется память...

Динамическое выделение памяти
Имеется: #define Index 1000 typedef int BaseType; typedef BaseType...

Динамическое выделение памяти
Использовать динамическое выделение памяти для программы : #include &quot;stdafx.h&quot;...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru