@DAN_ON

Как увеличить размер динамического масива?

Как увеличить размер динамического массива? У меня есть массив для представления строки. И когда длина строки больше чем размер, бросается исключение. Как увеличить размер массива и избежать исключения?

int main() {
	int size = 3;
	char *a = new char[size];
	char* b = new char[size];

	cin >> a;
	
	cout << "\n" << "Input one  number";
	cin >> b;

	cout << "1=" << strlen(a) << "  two =" << strlen(b);

	delete[]b;
	delete[]a;
	
	return 0;
}
  • Вопрос задан
  • 129 просмотров
Пригласить эксперта
Ответы на вопрос 2
gbg
@gbg Куратор тега C++
Любые ответы на любые вопросы
Такого (созданного при помощи new) - только созданием нового и копированием в него содержимого из старого.

Для std::vector есть метод .resize()
Ответ написан
Используйте std::string:
#include<String>
using namespace std;
int main(){
string t="";
cin>>t;//сохранить данные в переменную std::string
const char *a=t.c_str();//преобразовать string в const char*
//Для 2 массива альтернативный подход.
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы