С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 5.00
lexflax
10 / 10 / 1
Регистрация: 03.04.2011
Сообщений: 627
#1

Не выводится содержимое динамического списка - C++

14.10.2012, 14:38. Просмотров 1592. Ответов 40
Метки нет (Все метки)

доброго времени суток.
структура с типом стринг, трем элементам структуры присваивается значение потом при попытки вывести одно из значений, тоесть обратится к списку через указатель выдает ошибку в строке вывода.
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
#include <vcl.h>
#pragma hdrstop
#include<iostream.h>
#include <tchar.h>
#include <string.h>
//---------------------------------------------------------------------------
 
struct lfile{
string name;
string data;
string upd;
    lfile*next;
}*start,*p;
void create_list(string a,string b,string c){
p = new lfile;
p->name=a;
p->data=b;
p->upd=c;
p->next = NULL;
start = p;
return;
}
char main(){
 setlocale(LC_ALL, "rus");
string a,b,c;
printf("Введите значение для первого элемента, создаваемого списка: ");
a="kot";
b="dog";
c="got";
cout<<p->name; \\ вот тут выдает ошибку
return 0;
}
ошибка такая [BCC32 Error] probstrukt.cpp(32): E2094 'operator<<' not implemented in type 'ostream' for arguments of type 'string'
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.10.2012, 14:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не выводится содержимое динамического списка (C++):

Не выводится на экран элемент динамического массива - C++
Здравствуйте! Сразу прошу прощения за название темы, т.к. далее по тексту вы узнаете, что проблема относится не совсем к выводу на экран...

Не выводится содержимое массива - C++
Привет ребята! Задали такую задачку, код написал, но видать где-то косяк, массив из значений не выводит, а s2,k2,k3,p - выводит вот код...

А чего не выводится содержимое вектора? - C++
Здравствуйте. Новичок. Задача: Написать функцию которая считывает слова из входного потока и сохраняет их в векторе. Я придумал...

Выводится содержимое переменной, а не адрес - C++
Тип char. Почему выводится содержимое? pAdd-&gt;name=a.taskName; cout&lt;&lt;&amp;a.taskName&lt;&lt;endl;

Обмен элементов динамического списка - C++
Народ помогите кто как может или литературы полезной скиньте, что то читал читал, а толку нету. необходимо создать однонаправленный...

Структура в виде динамического списка - C++
Доброе время суток. Есть программа #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;locale.h&gt; #include &lt;windows.h&gt; #include...

40
alsav22
5428 / 4823 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
14.10.2012, 15:06 #2
Попробуйте #include <string.h> заменить на #include <string>, #include<iostream.h> на #include<iostream> и using namespace std; добавьте.
0
lexflax
10 / 10 / 1
Регистрация: 03.04.2011
Сообщений: 627
14.10.2012, 16:21  [ТС] #3
от той ошибки избавился))) возникает другая ошибка... на скрине она изображенна подскажите как от нее избавится и почему она возникает?
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
#include <vcl.h>
#pragma hdrstop
#include<iostream.h>
#include <tchar.h>
#include <string>
//---------------------------------------------------------------------------
#include <conio.h>
struct lfile{
string name;
string data;
string upd;
    lfile*next;
}*start,*p;
void create_list(string a,string b,string c){
p = new lfile;
p->name=a;
p->data=b;
p->upd=c;
p->next = NULL;
start = p;
return;
}
main(){
setlocale(LC_ALL, "rus");
string a,b,c;
cout<<"Введите значение для первого элемента, создаваемого списка: ";
a="kot";
b="dog";
c="got";
cout<<start->name;
getch();
return 0;
}
0
Миниатюры
Не выводится содержимое динамического списка  
BumerangSP
4287 / 1409 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
14.10.2012, 17:15 #4
Ну, сначала надо память выделить, а потом к ней обращаться:
C++
1
2
3
start=new (lfile);
start->name="dog"; //для наглядности 
cout<<start->name;
alsav22, у него, вероятно, borland стоит.
0
lexflax
10 / 10 / 1
Регистрация: 03.04.2011
Сообщений: 627
14.10.2012, 17:38  [ТС] #5
Цитата Сообщение от lexflax Посмотреть сообщение
C++
1
2
3
4
5
6
p = new lfile;
p->name=a;
p->data=b;
p->upd=c;
p->next = NULL;
start = p;
ок вот тут p выделяется память но если я на вывод ставлю
cout<<p->name;
то таже самая ошибка возникает
0
alsav22
5428 / 4823 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
14.10.2012, 17:53 #6
Структуру сначала нужно заполнить. В функции main() сделайте вызов функции:
C++
1
create_list(a, b, c)
, а потом уже:
C++
1
cout<<start->name;
0
lexflax
10 / 10 / 1
Регистрация: 03.04.2011
Сообщений: 627
14.10.2012, 18:04  [ТС] #7
аллилуя вот совет помог сейчас работает, осталось только придумать как сделать функции чтоб можно было узнать количество записей ну или анкет в списке, как добавлять новые и новые, и как найти по имени какую нибудь из них.... мне вообще надо сделат динамический список и преподу сдать работу
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
#include <vcl.h>
#pragma hdrstop
#include<iostream.h>
#include <tchar.h>
#include <string>
//---------------------------------------------------------------------------
#include <conio.h>
struct lfile{
string name;
string data;
string upd;
    lfile*next;
}*start,*p;
void create_list(string a,string b,string c){
p = new lfile;
p->name=a;
p->data=b;
p->upd=c;
p->next = NULL;
start = p;
return;
}
main(){
setlocale(LC_ALL, "rus");
string a,b,c;
cout<<"Vvedite znachenie pervogo elementa v sozdavaemom spiske: ";
cin>>a>>b>>c;
create_list(a,b,c);
cout<<p->name<<endl<<p->data<<endl<<p->upd;
getch();
return 0;
}
0
Nixy
ComfyMobile
400 / 281 / 8
Регистрация: 24.07.2012
Сообщений: 916
14.10.2012, 18:07 #8
Цитата Сообщение от BumerangSP Посмотреть сообщение
у него, вероятно, borland стоит.

Не по теме:

а мне кажется это RAD Studio, хотя если считать что Embarcadero их купила, то да это Borland


А по теме, ТС , а вы ООП проходили?
0
lexflax
10 / 10 / 1
Регистрация: 03.04.2011
Сообщений: 627
14.10.2012, 18:09  [ТС] #9
совершенно верно Embarcadero RAD Studio
0
Nixy
ComfyMobile
400 / 281 / 8
Регистрация: 24.07.2012
Сообщений: 916
14.10.2012, 18:12 #10
а что насчет ООП?
0
alsav22
5428 / 4823 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
14.10.2012, 18:18 #11
Цитата Сообщение от lexflax Посмотреть сообщение
осталось только придумать как сделать функции чтоб можно было узнать количество записей ну или анкет в списке, как добавлять новые и новые, и как найти по имени какую нибудь из них.... мне вообще надо сделат динамический список и преподу сдать работу
Связанный спиок. На форуме тем много.
1
lexflax
10 / 10 / 1
Регистрация: 03.04.2011
Сообщений: 627
14.10.2012, 18:18  [ТС] #12
я правильно понимаю ООП это объектно-орентриуемое программирование? я заочник ускоренник у меня пар нету и группы свой нету специальность "программное обеспечение" так где что уловлю прочту так и как то на третий курс и перешел)
0
Nixy
ComfyMobile
400 / 281 / 8
Регистрация: 24.07.2012
Сообщений: 916
14.10.2012, 18:20 #13
да ООП , это объектное программирование, так былобы проще, а вы как я понимаю собираетесь делать структуры наподобии стека?
1
lexflax
10 / 10 / 1
Регистрация: 03.04.2011
Сообщений: 627
14.10.2012, 18:23  [ТС] #14
ну вообще от препода у меня задание создать динамический список используя классы и стек, но честно говоря я не понял чем стек отличается от простой структуры, а с классами тем более у меня все плохо читал читал но как то смутно с ними все осталось, решил попробовать хотя бы без классов создать динамический список и функции добавления новых элементов в спикок, удаление ну и желательно поиск
0
BumerangSP
4287 / 1409 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
14.10.2012, 18:27 #15
Цитата Сообщение от lexflax Посмотреть сообщение
орентриуемое
Ориентированное.
Цитата Сообщение от Nixy Посмотреть сообщение
Не по теме:
а мне кажется это RAD Studio, хотя если считать что Embarcadero их купила, то да это Borland
Nixy, ну, да они из одной области.

Цитата Сообщение от Nixy Посмотреть сообщение
структуры наподобии стека?
Списка. Стек неуместен.

Добавлено через 2 минуты
Цитата Сообщение от lexflax Посмотреть сообщение
отличается от простой структуры
От какой простой? Стек - это и есть структура. От списка отличается, во-первых, назначением, во-вторых, особенностями реализации.
1
14.10.2012, 18:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.10.2012, 18:27
Привет! Вот еще темы с ответами:

Создать шаблон динамического списка - C++
спроектировать шаблон для класса динамический список Создать конструкторы: по умолчанию, с параметрами и копирования и продемонстрировать...

Абстрактный класс динамического списка - C++
Как создать из класса динамического списка - абстрактный? Ну ясно что абстрактный класс - это класс с чистой виртуальной функцией. ...

Поместить в стек из динамического списка - C++
У меня такая задача: Последовательность вещественных чисел сохранить в динамическом списке. Поместить в стек все отрицательные числа,...

Сортировка динамического линейного списка - C++
Подскажите пожалуйста как вывести список книг изданных после указанного года.Я уже все пересмотрела везде только добавить -удалить.Это я...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

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