Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 04.08.2012
Сообщений: 16
1

Строки, динамическая память, обрезка строк

20.09.2012, 13:25. Показов 1542. Ответов 1
Метки нет (Все метки)

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

3. Удалить с m по n символов, перезаписать строку и показать ее на экран.

Решил объеденить 2 сразу
При выводе строки на экран выбивает лишние символы после нольсимвола порядка 7 штук а более, в чем может быть причина?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include<iostream>
#include<string.h>
//#include<stdio.h>
//#include<conio.h>
using namespace std;
 
void main()
{
char *string=new char[256];
int m,n,len,len2;
cout<<"input fraze"<<endl;
cin>>string;
len=strlen(string);
cout<<len<<endl;
do
{
    cout<<"input n<"<<len<<"\n";
cin>>n;
}
while(n>=len||n<=0);
cout<<endl;
do
{
    cout<<"input m<n="<<n<<"\n";
cin>>m;
}
while(m>=n||m<0);
len2=n-m+2;//запас разность + сам символ и на нульсимвол
char *word=new char[len2];
for(int i=m,j=0;i<=n;i++,j++)
{
    *(word+j)=*(string+i);
    cout<<word[j];
}
cout<<endl;
cout<<word;//контроль строки, куча лишних символов????
cout<<endl;
delete []word;
delete []string;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.09.2012, 13:25
Ответы с готовыми решениями:

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

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

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

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

1
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
20.09.2012, 14:12 2
C++
1
2
3
4
5
6
7
8
9
...
int j = 0;
for(int i = m; i <= n; i++, j++)
{
    *(word + j) = *(string+i);
    cout<<word[j];
}
*(word + j) = '\0';
...
1
20.09.2012, 14:12
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.09.2012, 14:12
Помогаю со студенческими работами здесь

Динамическая память и строки
Решил написать класс реализовывающий очередь строк class ReadQueue { char** Message; ...

Ошибка при передаче строки (списки и динамическая память)
задача кода принять из файла имена и если они начинаются на A вывести на экран, написал пока без...

Динамическая память: поменять местами первый и последний символ строки
при помощи ДИНАМИЧЕСКОЙ ПАМЯТИ поменять местами первый и последний символ в рядке . Добавлено...

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


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru