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

Можно ли переменную финализировать для подобной задачи? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Переход с Java на С++ http://www.cyberforum.ru/cpp-beginners/thread543354.html
Доброго времени суток, я хотел узнать как можно переписать сервер LineAge II Java на С++. Кратко о сути проблемы (возможно это не проблема просто я не понимаю что и как) Когда мы компилируем исходники java-сервера создается "*.jar" архив, который в свою очередь запускается с помощью батника. Что хочу сделать Я, взять данные исходники и переписать их на С++, только я не могу понять какой проект...
C++ Почему массив инициализируется с 7-ю элементами?.. Друзья! Требуется помощь:) Задача: вводим денежную сумму в формате $123,321,442 , выбираем из нее цифорки и записываем в переменную типа unsigned long double. Проблема: массив в который записываются только цифры (у меня это массив arr) инициализируется с 7-ю элементами, из-за этого все рушится... почему так происходит? #include<iostream> #include<iomanip> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread543348.html
программа сортировки однонаправленного списка C++
Написать программу сортировки однонаправленного списка записей со следующей структурой: Структура: ФИО,средний балл аттестата, место жительства Сортировка: По среднему баллу аттестата в порядке убывания
C++ По заданному целому числу определить,является ли оно положительным,отрицательным или нулем.
По заданному целому числу определить,является ли оно положительным,отрицательным или нулем,используя перечисляемые константы и переключатель
C++ Задача на массивы http://www.cyberforum.ru/cpp-beginners/thread543315.html
Надо написать программу , которая делает следующие: сделать 2-а массива, значения которых это 7 рандомных чисел в интервале от 0 до 11. сделать 3 массив, элементы которого это разница елементов 1 и 2 массивов выяснить, сколько чисел в 2-ом массиве меньше 3
C++ Использование функций. 1. Определить натуральное число не больше заданного n с наибольшей суммой делителей. Использовать функцию вычисления суммы делителей числа. 2. Написать функцию вставки элемента в массив. Все элементы после него сдвигаются на один вправо, а последний элемент массива теряется. подробнее

Показать сообщение отдельно
daslex
1254 / 499 / 102
Регистрация: 02.08.2011
Сообщений: 2,506
09.04.2012, 18:20  [ТС]     Можно ли переменную финализировать для подобной задачи?
Цитата Сообщение от dimcoder Посмотреть сообщение
1
C++
1
2
3
4
int a=222;
 char *Buf = new char[a];
//Работаете как с обычным массивом
delete [] Buf; //Не забываем очистить выделенную раннее память
Вот в таком варианте у меня не выходит даже вывести на экран переменную = индекс

C++
1
2
3
4
5
6
7
8
int a=222;
 char *Buf = new char[a];
  cout<<"Buf = "<<Buf<<endl;      //И так пробовал вывести  
  cout<<"Buf = "<<Buf[0]<<endl;  //И так пробовал
  
  Buf[0]=a; //Так как первые две попытки неудачны вышли, решил насильно присвоить в начало массива
  cout<<"Buf[0] = "<<Buf[0]<<endl; //Так тоже не получается
delete [] Buf; //Не забываем очистить выделенную раннее память

Насколько я понимаю при обращении к числу Buf на экран должно выводиться 222. Так как я подразумеваю, что в индекс должно прописаться именно это число.

По варианту с STL мне не подходит. Реализовать нужно как реализовывали древние студенты, которые программировали еще в C++ для DOS

С третьим предложенным вариантом еще не разбирался

Добавлено через 50 минут
Цитата Сообщение от daslex Посмотреть сообщение
от в таком варианте у меня не выходит даже вывести на экран переменную = индекс
всё верно. я разобрался

Добавлено через 30 минут
Только другой вопрос появился.
Если переменная a не финализируется, а периодически меняет значение.

Например при первом вычислении a=10 и я при разработке не знаю на сколько a увеличится.
При этом я не хочу выделять лишнюю память без надобности. И я решил выделить ровно столько, сколько надо для а символов.
Но во время работы программы потребность в количестве символов возросла например резко до 10.000 и я хочу увеличить а, а потом потребность а упала, например до 5 и чтобы как-то разгрузить память и увеличить скорость работы мне нужно снова поменять значение а.

Вот как-то так. Есть ли не сложный вариант элегантного решения рационального использования памяти.

В С++ я очень слаб, поэтому правильно поставить вопрос мне сложно. При динамическом выделении памяти так наверное можно сделать. Вот и нужно мне узнать как устанавливать новую размерность (измененное значение а)
 
Текущее время: 15:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru