- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
list::list(FILE*f,FILE*f1){
first=(starosta*)new student;
rea=first;
int i=0,j;
for(j=0;j<5;j++){
if (i) {
rea->next=(starosta*)new student;
rea=rea->next;
}
i=1;
fscanf(f,"%d",&(rea->num));
fscanf(f,"%s",rea->fam);
fscanf(f,"%d",&(rea->stip));
rea->flag=0;
}
cur=(starosta*)rea;
for(j=0;j<3;j++){
cur->next=new starosta;
cur=(starosta*)cur->next;
cur->flag=1;
fscanf(f1,"%d",&(cur->num));
fscanf(f1,"%s",cur->fam);
fscanf(f1,"%d",&(cur->stip));
fscanf(f1,"%d",&(cur->kolvo));
cur->next=NULL;
}
}
классный конструктор... тут много приколов
This is obvious 22.06.2010 17:50 # 0
tony 22.06.2010 18:02 # +2
Stalker 22.06.2010 18:18 # 0
Тут list сам по себе весёлый... Кто там студент, кто староста?
И, кажется, проебали заполнение первого элемента.
pushkoff 22.06.2010 20:21 # +2
причем радует эта строка (starosta*)new student;
создается студент, а подразумевается староста...
Webkill 22.06.2010 20:44 # −4
Stalker 22.06.2010 20:49 # 0
Угу, теперь дошло и до меня.
inkanus-gray 22.06.2010 22:40 # −1
pushkoff 23.06.2010 16:02 # 0
pushkoff 23.06.2010 16:03 # −1
Webkill 23.06.2010 17:45 # −5
Stalker 23.06.2010 17:55 # +1
inkanus-gray 23.06.2010 20:58 # +1
Всё равно не нравится мне этот цикл. i=1 на каждом проходе, кроме первого выполняется.
Stalker 23.06.2010 21:17 # 0
А if (i) всё-таки легко заменяется на if (j)
pushkoff 23.06.2010 22:20 # 0
i тут нужно чтоб убрать первое выделение, так как оно было до цикла...
Webkill 23.06.2010 22:35 # 0
эта пять )
gpr 22.06.2010 18:29 # 0
DarthBobr 22.06.2010 21:08 # +4