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

"Выражение должно быть допустимым для изменения левосторонним значением" - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
BohdanSavych
1 / 1 / 0
Регистрация: 25.12.2013
Сообщений: 44
28.01.2014, 13:37     "Выражение должно быть допустимым для изменения левосторонним значением" #1
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#include <iostream>
#include<conio.h>
#include<math.h>
#include<fstream>
using namespace std;
struct knigi {
    char name[30];
    char avtor[30];
    int kilkistsor;
    knigi* next;
}A;
void print( knigi*);
void insert(knigi*,char[],char[] ,int );
int main()
{
knigi* p = new knigi;
knigi* pp = new knigi;
pp=p;
char avtor1[30];
char name1[30];
int kilkistsotr1;
ifstream t1;
    t1.open("text.txt");
    char t[200]; 
    if(t1.fail())cout<<"Pomulka faily\n";   
    while(!t1.eof()){ 
         pp->next = new knigi;
        pp=pp->next;
 
        t1.getline(t,200);
        strcpy(pp->avtor,strtok(t,","));
        strcpy(pp->name,strtok(NULL,","));
        pp->kilkistsor =atoi(strtok(NULL,","));
        }
    pp->next=NULL;
    pp=p;
    print(p);
    cout<<"enter what u want to insert"<<endl;
    cin>>avtor1;
    cin>>name1;
    cin>>kilkistsotr1;
    
    
    system("PAUSE");
    return 0;
}
void print(knigi* tmp1)
{knigi* tmp;
    tmp=tmp1;
    while(tmp->next )
    {
    tmp=tmp->next ;
 
    cout<<tmp->avtor<<"\t"<<tmp->name <<"\t"<<tmp->kilkistsor <<endl; ;
    }
}
void insert(knigi* pp, char avtor1[] , const char name1[],int kilkistsotr )
{
knigi *tmp=new knigi;
tmp->avtor =avtor1;//тут проблема
tmp->name=name1;//тут проблема
tmp->kilkistsor =kilkistsotr;
tmp->next =pp->next ;
pp->next =tmp;
 
 
}
думаю,что сделал глупую ошибку...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.01.2014, 13:37     "Выражение должно быть допустимым для изменения левосторонним значением"
Посмотрите здесь:

Ошибка: Выражение должно быть допустимым для изменения левосторонним значением C++
Программа выдает 3 ошибки. Одна из них: IntelliSense: выражение должно быть допустимым для изменения левосторонним значением C++
Выражение должно быть допустимым для изменения левосторонним значением C++
Выражение должно быть допустимым для изменения левосторонним значением C++
Ошибка "выражение должно быть допустимым для изменения левосторонним значением" C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5548 / 2562 / 233
Регистрация: 01.11.2011
Сообщений: 6,332
Завершенные тесты: 1
28.01.2014, 13:54     "Выражение должно быть допустимым для изменения левосторонним значением" #2
C++
1
2
3
4
5
6
7
8
9
void insert(knigi* pp, char avtor1[], const char name1[],int kilkistsotr )
{
knigi *tmp=new knigi;
strcpy( tmp->avtor, avtor1 );//тут проблема
strcpy( tmp->name, name1 );//тут проблема
tmp->kilkistsor =kilkistsotr;
tmp->next =pp->next ;
pp->next =tmp;
}
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
28.01.2014, 13:56     "Выражение должно быть допустимым для изменения левосторонним значением" #3
BohdanSavych,
C++
1
2
    strcpy(tmp->avtor,avtor1);
    strcpy(tmp->name,name1);
BohdanSavych
1 / 1 / 0
Регистрация: 25.12.2013
Сообщений: 44
28.01.2014, 14:04  [ТС]     "Выражение должно быть допустимым для изменения левосторонним значением" #4
спасибо!!
Yandex
Объявления
28.01.2014, 14:04     "Выражение должно быть допустимым для изменения левосторонним значением"
Ответ Создать тему
Опции темы

Текущее время: 10:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru