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

Нужно ли под массив выделять память функциями malloc или new? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Как сложить побитно два числа в двоичной с/с http://www.cyberforum.ru/cpp-beginners/thread1130116.html
Добрый день форумчане! У меня программа по переводу из 10 с/с в 2 с/с. Она сделана используя битовые поля. (см. код ниже) Вопрос, а как сложить по битно два числа в двоичной с/с (опять же используя битовые поля)?? У меня есть здесь сложение, но в 10 с/с происходит. Подскажите пожалуйста. Буду сильно благодарен, если мой код будет продолжен. #include <conio.h> #include <stdio.h>
C++ Сортировка массива из текстового файла по возрастанию Сортировка массива из текстового файла по возрастанию Здравствуйте!Подскажите пожалуйста.У меня есть текстовый файл, в котором записаны числа.Нужно прочитать их,отсортировать по возрастанию и записать уже отсортированный массив в другой текстовый файл. Никак не получается вывести массив и записать его. #include "stdafx.h" #include <iostream> #include <fstream> #include <conio.h>... http://www.cyberforum.ru/cpp-beginners/thread1130103.html
Опрос, объявление переменных - стиль программирования C++
собственно каким вы способ пользуетесь и каким по вашему мнению правильно пользоваться: 1. pervaya_peremennay 2. first_variable 3. FirstVariable 4. fv // first variable / первая переменная 5. свой вариант
C++ Найти наибольший общий делитель двух чисел используя алгоритм Евклида
Найти наибольший общий делитель двух чисел используя алгоритм Евклида. Подскажите как написать программу...
C++ Выводятся дополнительные странные символы из vector<unsigned char> http://www.cyberforum.ru/cpp-beginners/thread1130073.html
Здравствуйте! Вот такой простой код: int main() { string a = "asd"; std::vector<unsigned char> buf(a.begin(), a.end()); for (int i= 0 ;i< buf.size(); ++i) { cout<<&buf<<endl; } return 0; }
C++ Считывание и вывод TCHAR из консоли Не могу сделать, не пойму, что идет не так. Текст не выводится. Хочу, чтобы из консоли считывался текст, заносился в szText и выводился на экран. Использую кодировку UNICODE. Прошу совета! #include <windows.h> #include <tchar.h> #include <conio.h> int _tmain(int argc, _TCHAR* argv) { TCHAR szText; подробнее

Показать сообщение отдельно
andreyananas
 Аватар для andreyananas
17 / 17 / 5
Регистрация: 15.10.2013
Сообщений: 806
26.03.2014, 12:04     Нужно ли под массив выделять память функциями malloc или new?
собственно вот программа по вводу размера массива, вводу массива, сортировки:
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <iostream>
#include <windows.h>
 
using namespace std;
 
int main()
{
    SetConsoleOutputCP(1251);
    char con;
    int n(0), a(0);
    do
    {
        system("cls");
        cout << " [---Программа для сортировки массива---]" << endl;
        cout << " Введите размер массива: " << endl;
        cin >> n;
        double rn[n];
        for(int i(0); i<n; i++)
        {
            cout << " Введите " << i+1 << "й элемент:" << endl;
            cin >> rn[i];
        }
        cout << "\n\n Для сортировки по возростанию введите - 1\n";
        cout << " Для сортировки по убыванию введите    - 2\n\n";
        cin >> a;
        if(a == 1)
        {
            double t;
            for(int i(0); i<n-1; i++)
                for(int j=i+1; j<n; j++)
                {
                    if(rn[i]>rn[j])
                    {
                        t=rn[i];
                        rn[i]=rn[j];
                        rn[j]=t;
                    }
                }
        }
        else
            if(a == 2)
            {
            double t;
            for(int i(0); i<n-1; i++)
                for(int j=i+1; j<n; j++)
                {
                    if(rn[i]<rn[j])
                    {
                        t=rn[i];
                        rn[i]=rn[j];
                        rn[j]=t;
                    }
                }
            }
        for(int i(0); i<n; i++)
        {
            cout << " rn[" << i+1 << "] = " << rn[i] << endl;
        }
        cout <<"  размер массива -  " << sizeof(rn) << endl;
 
 
 
 
        cout << "\n Для продолжения программы введите - 'y' \n";
        cout << " для выхода исз программы, введите любой символ...\n";
        cin >> con;
    }
    while(con=='y');
    return 0;
}
Вопрос:
Нужно ли под массив выделять память функциями malloc или new? Если в принцип все и так работает.
Или все таки, правильно будет выделить дин. память, а в конце программы - удалить её?

Добавлено через 2 минуты
Пользуюсь последним Qt MinGW
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 05:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru