Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Archiolidius
0 / 0 / 0
Регистрация: 13.02.2012
Сообщений: 8
#1

Подскажите, пожалуйста, как правильно объявить динамически расширяемую строку? - C++

13.02.2012, 21:57. Просмотров 803. Ответов 4
Метки нет (Все метки)

Подскажите, пожалуйста, как правильно объявить динамически расширяемую строку?
Когда я объявляю так: char* ch1=new char; и считываю её (gets(ch1)) , то при количестве символов >23 программа вылетает. Выдает вот такое:
Windows has triggered a breakpoint in L.exe.

This may be due to a corruption of the heap, which indicates a bug in L.exe or any of the DLLs it has loaded.

This may also be due to the user pressing F12 while L.exe has focus.

The output window may have more diagnostic information.
Может нужно по другому строку объявлять?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2012, 21:57
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Подскажите, пожалуйста, как правильно объявить динамически расширяемую строку? (C++):

Как в классе реализовать динамическую расширяемую строку? - C++
1)Когда учил динамические массивы, многое недопонял. Вот к примеру в учебных примерах зачастую дают пользователю самому назначить...

как мне в функции main() объявить функцию Do (), подскажите пожалуйста, на таком глупом застрял - C++
#include <iostream> #include <string> #include <conio.h> #include <clocale> #include <math.h> using namespace std; class Tem; ...

Пожалуйста подскажите как правильно! - C++
Получите целочисленную матрицу A размеров nxm, для которой aij=i+2j

Подскажите пожалуйста как правильно расспечатать - C++
Всем привет! Как правильно расспечатать? void fun(void ** vaddr){ printf("%p", *(int*)vaddr); } Так будет...

Подскажите пожалуйста, как правильно освободить память - C++
Всем ку! Подскажите пожалуйста, как правильно удалить(освободить память) массива array2D. Array1D<Elem>* array2D = ...

Подскажите пожалуйста как правильно это объяснить, прочитать - C++
#include<stdio.h> int main() { double y,x; printf("Vvedite zna4enie y="); scanf("%lf",&y); if(y>2) ...

4
rangerx
1941 / 1550 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
13.02.2012, 22:06 #2
C++
1
2
3
4
5
#include <string>
#include <iostream>
//...
std::string s;
std::getline(std::cin, s);
Добавлено через 1 минуту
Цитата Сообщение от Archiolidius Посмотреть сообщение
Когда я объявляю так: char* ch1=new char;
Так вы выделяете память под один символ.
1
Archiolidius
0 / 0 / 0
Регистрация: 13.02.2012
Сообщений: 8
13.02.2012, 22:11  [ТС] #3
Цитата Сообщение от rangerx Посмотреть сообщение
C++
1
2
3
4
5
#include <string>
#include <iostream>
//...
std::string s;
std::getline(std::cin, s);
Добавлено через 1 минуту

Так вы выделяете память под один символ.
Спасибо большое! А как теперь преобразовать её в float? Если Char можно было через atof, то как это реализовать в данном случае?
0
rangerx
1941 / 1550 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
13.02.2012, 22:25 #4
Если вы используете копмилятор с поддержкой последнего стандарта C++ то
C++
1
double f = std::stof(s);
в противном случае можно использовать тот же atof
C++
1
double f = atof(s.c_str());
1
Archiolidius
0 / 0 / 0
Регистрация: 13.02.2012
Сообщений: 8
13.02.2012, 22:26  [ТС] #5
rangerx, Спасибо
C++
1
double f = stof(s);
прекрасно работает=)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.02.2012, 22:26
Привет! Вот еще темы с ответами:

Подскажите пожалуйста, как правильно вывести,сформировать массив из задания - C++
Дан массив С из 16 элементов.Нужно:проинициализировать массив С, вывод промежуточных данных и массивов на экран. а) Сформировать массив...

Подскажите пожалуйста как разбить строку на массив слов? - C++
Надо разбить строку на массив строк при помощи разделителя... Какой функцией для этого надо восьпользоваться?

Знаю , что подобное задание на форуме есть, но подскажите как правильно оформить мой код, пожалуйста - C++
#include &quot;stdafx.h&quot; #include &quot;conio.h&quot; #include &quot;locale.h&quot; #include &quot;math.h&quot; #include &quot;ctype.h&quot; //Не правильно считает сумму и в...

Как объявить массив динамически, заполнив его случайными числами - C++
Как объявить массив динамически, заполнив его случайными числами


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

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

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