C++ опять фигню написал и компилятор матерится

программирование Наука

#include <fstream>
#include <string>

using namespace std;

string str;
struct list
{
char ch;
list* forw;
};
list *plist=NULL;

void Put(char t)
{
list *z;
z=new list;
*z.ch=t;
*z.forw=plist;
}

int main()
{
ifstream inp("input.txt");
ofstream out("output.txt");
inp>>str;
int i=0,n=str.length();
bool flag=true;
while (flag==true)
{
if (str[i]=='{' || str[i]=='(' || str[i]=='[') Put;
}
return 0;
}


#include <fstream>
#include <string>

using namespace std;

string str;
struct list
{
char ch;
list* forw;
};
list *plist=NULL;

void Put(char t)
{
list *z;
z=new list;
*z.ch=t;
*z.forw=plist;
}

int main()
{
ifstream inp("input.txt");
ofstream out("output.txt");
inp>>str;
int i=0,n=str.length();
bool flag=true;
while (flag==true)
{
if (str[i]=='{' || str[i]=='(' || str[i]=='[') Put;
}
return 0;
}

#include <fstream>
#include <string>

using namespace std;

string str;
struct list
{
char ch;
list* forw;
};
list *plist=NULL;

void Put(char t)
{
list *z;
z=new list;
*z.ch=t;
*z.forw=plist;
}

int main()
{
ifstream inp("input.txt");
ofstream out("output.txt");
inp>>str;
int i=0,n=str.length();
bool flag=true;
while (flag==true)
{
if (str[i]=='{' || str[i]=='(' || str[i]=='[') Put;
}
return 0;
}

#include <fstream>
#include <string>

using namespace std;

string str;
struct list
{
char ch;
list* forw;
};
list *plist=NULL;

void Put(char t)
{
list *z;
z=new list;
*z.ch=t;
*z.forw=plist;
}

int main()
{
ifstream inp("input.txt");
ofstream out("output.txt");
inp>>str;
int i=0,n=str.length();
bool flag=true;
while (flag==true)
{
if (str[i]=='{' || str[i]=='(' || str[i]=='[') Put(str[i]);
}
return 0;
}
C:\cpp\d\main.cpp|18|error: request for member 'ch' in 'z', which is of non-class type 'list*'|
C:\cpp\d\main.cpp|19|error: request for member 'forw' in 'z', which is of non-class type 'list*'|

В программе хочу использовать связанный список, т.е. в процедуре Put() хочу добавить новое звено.

Примечание:
Сорри, криво скопировал, смотреть нижнюю часть

Примечание:
Игорь, сразу под кодом написал все что относится к этому

Примечание:
Вы далеки от ответа, Игорь=) Уже разобрался, просто динамические структуры работают по-другому. Написанный код должен быть:
z->ch=t;
z->forw=plist;
Ответы:
Хотелось бы поточнее узнать чего именно не нравится компилятору
C:\cpp\d\main.cpp, строка 18 - ошибка, ожидалось "ch" в "z", который не является классом типа "лист"
C:\cpp\d\main.cpp, строка 19 - ошибка, ожидалось "forw" в "z", который не является классом типа "лист"
Не ожидал, возможно я ещё не начал изучать такое в С++ =) Спасибо ещё за подсказку, думаю буду глубже изучать С++


14 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.