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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
QWAN
58 / 57 / 1
Регистрация: 02.09.2008
Сообщений: 181
#1

По Лафору пример, программа останавливается на строке delete[] name; - C++

28.07.2014, 10:35. Просмотров 249. Ответов 2
Метки нет (Все метки)

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
#include <iostream>
#include <cstring>
 
char *getname(void);
using namespace std;
 
int main()
{
    char *name = getname();    
    cout << name << endl;    
    delete[] name;
    cout << "delete[] name 1" << endl;
 
    name = getname();
    cout << name << endl;
    delete[] name;
    cout << "delete[] name 2" << endl;
    
    getchar();
    return 0;
}
 
#pragma warning(push)
#pragma warning(disable: 4996)
char *getname(void)
{
    char temp[80];
    cout << "Enter last name - ";
    cin >> temp;
    cin.get();
    char *p = new char(strlen(temp) + 1);
    strcpy(p, temp);
    return p;
}
#pragma warning(pop)
Подскажите где ошибка?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.07.2014, 10:35     По Лафору пример, программа останавливается на строке delete[] name;
Посмотрите здесь:

Программа вычисляющая интерполяционный многочлен Ньютона, останавливается при компиляции на 12 строке - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;windows.h&gt; #include&lt;math.h&gt; using namespace std; //Интерполяционный многочлен...

Проблемы с delete [], программа периодически аварийно завершается на строке с освобождением памяти. - C++
Добрый день! Столкнулся со следующей задачей: в программе требуется довольно часто изменять размеры массива, для чего использую...

Программа не останавливается в нужный момент - C++
Программа должна выводить близнецов не выше числа n*2, но она это делает. Вот условие, если кому то нужно: &quot;Дано натуральное число n....

Программа останавливается без ошибок на fopen - C++
Добрый вечер. Программа останавливается без ошибок или сообщений дебагера на строчке 190. Помогите разобраться, что не так. Код...

Программа останавливается после ввода имени файла - C++
В файле данные типа 1 2 45 1 3 60 1 4 60 и их надо считать в map и вывести, проблема, что после ввода имени файла стоит на месте и...

Вылетает программа из-за new и delete - C++
Cell.hpp #include &lt;SFML\Graphics.hpp&gt; #include &quot;state.hpp&quot; class Cell { private: sf::Sprite *sprite; state...

Почему вылетает программа на delete [] - C++
Здравствуйте, подскажите, пожалуйста, что именно не так и как исправить. Программа вылетает сразу же на деструкторе,т.е на delete . Хотя,...

Программа вылетает на delete[] Line - C++
Подскажите, кто-нибудь. Программа вылетает на delete Line; не пойму почему, вроде, все синтаксически правильно... int Size = 1, Step =...

Крашится программа при string в delete[] base - C++
Всем доброе утро. Делаю сейчас задание: требуется сделать класс Сотовая компания (MobCompany в коде), который содержит в себе класс...

Пример из книги Лафоре. Подсчитать количество слов и символов в строке - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; // для getche() using namespace std; int main() { setlocale(LC_ALL, &quot;Rus&quot;); int...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jewbacabra
Эксперт PHP
2168 / 1832 / 679
Регистрация: 24.04.2014
Сообщений: 5,331
28.07.2014, 10:42     По Лафору пример, программа останавливается на строке delete[] name; #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от QWAN Посмотреть сообщение
char *p = new char(strlen(temp) + 1);
C++
1
char *p = new char[strlen(temp) + 1];
QWAN
58 / 57 / 1
Регистрация: 02.09.2008
Сообщений: 181
28.07.2014, 10:44  [ТС]     По Лафору пример, программа останавливается на строке delete[] name; #3
Все заработало!
Yandex
Объявления
28.07.2014, 10:44     По Лафору пример, программа останавливается на строке delete[] name;
Ответ Создать тему
Опции темы

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