Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задана строка, начальная и конечная позиции подстроки https://www.cyberforum.ru/ cpp-beginners/ thread828055.html
привет всем! Задана строка, начальная и конечная позиции подстроки. Выделить подстроку. прога должна работать в ассемблере
C++ Вычислить n член F(n) последовательности Фибоначчи
привет всем! Вычислите n-й член F(n) последовательности Фибоначчи. В этой последовательности первые два члена равны 1, а каждый последующий равен сумме двух предыдущих
C++ Сортировка структур по дате https://www.cyberforum.ru/ cpp-beginners/ thread828049.html
Дан массив записей, содержащих дату (число, месяц год) и время (часы минуты секунды) упорядочить массив в порядке возрастания!
C++ Проблемы со списком, в чем ошибка? https://www.cyberforum.ru/ cpp-beginners/ thread828047.html
Итак, изучал я, значит, C style lists (не знаю, как будет по-русски) и столкнулся с такой проблемой: надо его заполнить. Вроде все просто, написал следующий код: #ifndef ST_H #define ST_H //st.h...
Поиск максимального и минимального элементов массива C++
добрый вечер! Задано число. Вычислить максимальный показатель, с которым степень этого числа по длине не превысит слова (прога должна работать на ассемблере,платформа винды 64х разрядная)
C++ Длинная арифметика: при выполнении операции A-B, массив A портится class BigInt { static const int max_size = 100000;//количество десятичных разрядов, которые должно вмещать static const int osn = 10000;//Основание - {0,1,....,9999} ... https://www.cyberforum.ru/ cpp-beginners/ thread828028.html
C++ Переменные system( "/*Как нибудь можно здесь использовать переменные типов STRING или CHAR?*/" ); https://www.cyberforum.ru/ cpp-beginners/ thread828022.html Русский язык в VS2010 C++
Помогите сделать русский в с++, setlocale(LC_ALL,"Rus") не помогает
C++ Умножение элементов двумерного массива https://www.cyberforum.ru/ cpp-beginners/ thread828005.html
x1=masH*masH*masH; b1=masH*masH*masH; c1=masH*masH*masH; x=masH*masH*masH; b=masH*masH*masH; c=(masH)*(masH)*(masH); Вот мой код на умножение элементов двумерного массива. Но при...
C++ В одномерном массиве, вычислить: а) количество элементов массива б) произведение элементов массива в) От - к + Помогите пожалуйста!.. Вводить из клавиатуры массивы и обрабатывать их, пока на запрос “Хотите продолжать работу дальше (да, нет) ?” пользователь не ответит “нет”. Введены линейные массивы... https://www.cyberforum.ru/ cpp-beginners/ thread827996.html
C++ Информатика 9. Вывести на экран последовательность чисел, состоящую из нескольких строк
Ввести натуральное число N (N < 10). Вывести на экран последовательность чисел, состоящую из нескольких строк. Последовательность формируется по заданной закономерности, например, при N = 4 1 2 3 4 ...
C++ Установка SDL https://www.cyberforum.ru/ cpp-beginners/ thread827979.html
Здравствуйте! В Visual Studio C++ 2005 устанавливаю библиотеку SDL. Выскакивает ошибка fatal error LNK1561: entry point must be defined. Я это пытался исправить, назначая в Project->project...
148 / 139 / 18
Регистрация: 13.10.2012
Сообщений: 592
0

C-style Linked List - C++ - Ответ 4360561

04.04.2013, 16:54. Показов 741. Ответов 1
Метки (Все метки)

Итак, изучал я, значит, C-style Linked List (не знаю, как будет по-русски) и столкнулся с такой проблемой: надо его заполнить. Вроде все просто, написал следующий код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#ifndef ST_H
#define ST_H
 
//st.h
 
template <typename T>
class st{
public:
    st(T n);
    T a;
    st<T>* next;
};
 
template <typename T>
st<T>::st(T n){//конструктор
    a = n;
}
 
#endif // ST_H
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
//main.cpp
#include <iostream>
 
#include "include\st.h"
 
using namespace std;
 
void enter(st<int>* h){ //ввод
    int i;
    cin >> i;
    h = new st<int>(i); //указываем голове значение
    st<int>* c = h; //создаем собственно сам "бегающий" указатель на элемент списка, с которым работаем
    cin >> i;
    while(i != 0){ //0 - конец ввода
        c = new st<int>(i); //добавляем в список новое значение
        c = c->next; //перескакиваем на следующий элемент
        cin >> i; //ещё раз вводим
    }
    cout << h->next->a;//дебаговый вывод, тут-то он и выводит непонятные числа
}
 
int main(){
    st<int>* h; //указатель на голову
    enter(h); //вызываем ввод
    return 0;
}


Вернуться к обсуждению:
C-style Linked List C++
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.04.2013, 16:54
Готовые ответы и решения:

Linked List класс
Ребят! Помогите пожалуйста найти ошибку! Я все написал, но чтобы я не делал выбрасывает с...

Linked List описание
/*!Begin Snippet:filebegin*/ #ifndef _LINKEDLIST_H_ #define _LINKEDLIST_H_ using namespace...

Template double linked list C++
Пытался реализовать шаблон класса двусвязный список, элементарами которого является класс...

Проверить программу с linked list
Есть программа, но уверен много недочётов - сам не вижу. Например, правильно ли описаны private...

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.04.2013, 16:54

Связанный список (Linked list).
Добрый день. Вот пишу функцию (в коде название - smash), которая бы из текущего списка создавала 2...

Нужен совет - как сделать circular linked list?
Доброго всем времени суток!!! У меня программа которая считает queue, мне необходимо сделать...

Указатели, связной список (Linked List) и динамическое выделение памяти
Я вообще не понимаю как сделать. Ребят! Помогите, как сможете! /* Написать связной список...

Linked List: error C2360: initialization of 'vp' is skipped by 'case' label
Программа выдает ошибку . но я не понял в чем проблема . можете помочь исправить ? class Us {...

missing function header (old-style formal list?)
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; int main(); { unsignet...

error C2447: '{' : missing function header (old-style formal list?)
#include &lt;stdio.h&gt; #include&lt;conio.h&gt; int main(int argc, char *argv); { FILE *in, *out; /*...

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