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

Проблемы со списком, в чем ошибка? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ выполнение поиска максимального и минимального элементов массива http://www.cyberforum.ru/cpp-beginners/thread828043.html
добрый вечер! Задано число. Вычислить максимальный показатель, с которым степень этого числа по длине не превысит слова (прога должна работать на ассемблере,платформа винды 64х разрядная)
C++ Длинная арифметика class BigInt { static const int max_size = 100000;//количество десятичных разрядов, которые должно вмещать static const int osn = 10000;//Основание - {0,1,....,9999} int len_osn;//длинная в чарах нашего основания int dig_size;//истинный размер в интах = max_size/len_osn int *digits;//массив разрядов по основанию osn public: http://www.cyberforum.ru/cpp-beginners/thread828028.html
C++ Переменные
system( "/*Как нибудь можно здесь использовать переменные типов STRING или CHAR?*/" );
Русский язык в VS2010 C++
Помогите сделать русский в с++, setlocale(LC_ALL,"Rus") не помогает
C++ Умножение элементов двумерного массива http://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); Вот мой код на умножение элементов двумерного массива. Но при перемножении вместо нормального числа получается непонятно что.Этот код из программы под тегом.Я просто хочу найти определитель для матрицы 3 на 3.Чтобы потом получить обратную матрицу.Подскажите пожалуйста...
C++ В одномерном массиве, вычислить: а) количество элементов массива б) произведение элементов массива в) От - к + Помогите пожалуйста!.. Вводить из клавиатуры массивы и обрабатывать их, пока на запрос “Хотите продолжать работу дальше (да, нет) ?” пользователь не ответит “нет”. Введены линейные массивы обрабатывать за заданными алгоритмами а), б) и в), какие оформить в виде подпрограмм (функций). В подпрограммах-функциях ни введения, ни выведения данных, не должно быть. Главная функция должна вводить данные... подробнее

Показать сообщение отдельно
MastAKK
 Аватар для MastAKK
144 / 135 / 12
Регистрация: 13.10.2012
Сообщений: 586
Записей в блоге: 1
04.04.2013, 16:46     Проблемы со списком, в чем ошибка?
Итак, изучал я, значит, C style lists (не знаю, как будет по-русски) и столкнулся с такой проблемой: надо его заполнить. Вроде все просто, написал следующий код:
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
//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); //указываем голове значение i
    st<int>* c = h; //создаем собственно сам "бегающий" указатель на элемент списка, с которым работаем
    cin >> i;
    while(i != 0){ //0 - конец ввода
        c = new st<int>(i); //добавляем в список новое значение
        c = c->next; //перескакиваем на следующий элемент
        cin >> i; //ещё раз вводим i
    }
    cout << h->next->a;//дебаговый вывод, тут-то он и выводит непонятные числа
}
 
int main(){
    st<int>* h; //указатель на голову
    enter(h); //вызываем ввод
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru