2014-02-17 5 views
0

Я делаю проект, чтобы ознакомиться с помощью указателей. Я хочу ввести набор значений, используя только указатели, чтобы объединить их сортировку и распечатать. Я не хочу использовать массивы или векторы для этого проекта ...Сохранение значений без массива или вектора C++

МОЕГО ВОПРОСА: Есть ли способ, чтобы отслеживать нескольких значений, введенных пользователем с из массивов или векторами?

+0

А как насчет списков? ;) –

+0

Только указатели sorry = p это вызов –

+0

Собираетесь ли вы создавать сотни уникальных идентификаторов переменных для хранения каждого указателя? Что не так с использованием массива для хранения указателей на объекты, например? – DavidO

ответ

5

Наиболее распространенной структурой данных, которая не хранится в массиве, является linked list. Связанный список использует указатели, чтобы «связать» вместе «список» объектов.

+0

спасибо Я попробую сделать это –

+0

Я закончил с помощью num = new float [values]; Это не массив, а указатель с x количеством значений, указывающим на –

+0

@ user3319775: 'new float [values]' ** - это ** массив. Он живет в куче, а не в стеке. – DarkDust

1

Вы можете использовать концепцию связанного списка.
Вы можете кодировать его следующим образом

struct node 
{ 
    int n; 
    struct node *next; 
}*start=NULL; 

затем для вставки числа, выделить память динамически переменный узел и прикрепить его, чтобы начать узел следующим образом.

struct node *neww=(struct node *)malloc(sizeof(struct node)); 
neww->n=Number to insert; 
neww->next=NULL; 
start=neww; 
+2

Зачем использовать 'malloc' вместо' new'? – Jarod42

+0

Извините, я был в замешательстве с C. Вы можете использовать новый оператор в C++. – niyasc

Смежные вопросы