Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.04.2009, 15:46   #1
Ch00kan0ff
 
Регистрация: 23.03.2009
Сообщений: 8
По умолчанию Динамический массив в структуре

Необходимо сделать структуру из динамических массивов. Делаю
Код:
struct VED
  {int kolichz;
   int nommes;
   int *nm;
   int *nompp;
   int *tabnom;
   float *povr;
   float *sdel;
   float *sverh;
   float *uder;
   float *kvid;
  } z[12];
затем
Код:
char d [256];
 int nms, kz,  k, fkm, i, x1, x2, x3;
 float x4, x5, x6, x7, x8;
  if (OpenDialog1->Execute() )
 {
   tfn = OpenDialog1->FileName;
   List0->LoadFromFile(OpenDialog1->FileName);
 }
 nms=StrToInt(List0->Strings[0]);
 kz=StrToInt(List0->Strings[1]);
 okm=1;
 k=0;
 for ( i=0; i<=12; i++)
 {z[nms].kolichz=kz;
 z[nms].nommes=nms;
 z[nms].nm = new int [kz];
 z[nms].nompp = new int [kz];
 z[nms].tabnom = new int [kz];
 z[nms].povr = new float [kz];
 z[nms].sdel = new float [kz];
 z[nms].sverh = new float [kz];
 z[nms].uder = new float [kz];
 z[nms].kvid = new float [kz];
 k+=kz+2;
 nms=StrToInt(List0->Strings[k]);

 if(nms==12)
 break;
 kz=StrToInt(List0->Strings[k+1]);
 okm++;
 km[i]=nms;
 }
 fkm=km[0];
 k=z[fkm].kolichz+2;
 for ( i=0; i<okm; i++)
  {
   for (int j=2; j<k; j++)
    {sscanf((List0->Strings[j]).c_str(),"%d-%d-%d-%f-%f-%f-%f-%f",&x1,&x2,&x3,&x4,&x5,&x6,&x7,&x8 );
    z[fkm].nm[j-2]=x1;
    z[fkm].nompp[j-2]=x2;
    z[fkm].tabnom[j-2]=x3;
    z[fkm].povr[j-2]=x4;
    z[fkm].sdel[j-2]=x5;
    z[fkm].sverh[j-2]=x6;
    z[fkm].uder[j-2]=x7;
    z[fkm].kvid[j-2]=x8;
    }
    k+=z[fkm].kolichz+2;
    fkm=km[i+1];
    }

fkm=km[0];
 for (int nm=0; nm<okm;nm++)
 {for (int i=0; i<z[fkm].kolichz; i++)
     if (z[fkm].nompp[i]!=0)
      {sprintf(d," %d\t %d\t %f\t %f\t %f\t %f\t %f", z[fkm].nompp[i],z[fkm].tabnom[i],z[fkm].povr[i],z[fkm].sdel[i],z[fkm].sverh[i],z[fkm].uder[i],z[fkm].kvid[i]);
       ObzBD->Memo1->Lines->Add(d);
      }
   fkm=km[i];
}
ObzBD->ShowModal();

ничего в мемо не выводиться ессно. Делаю значит что то не так. Это понятно. А вот что? Помогите пожалуйсто.

З.Ы. в файле планируется держать в первой строке nms, во второй - количество записей для этого nms, т.е. kz, далее записи, потом повторение.

З.З.Ы. Ошибку не выдает.
Ch00kan0ff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамический массив Ivin Мультимедиа в Delphi 14 27.02.2009 23:22
Динамический массив _ares_ Паскаль, Turbo Pascal, PascalABC.NET 3 26.12.2007 23:54
динамический массив Diller Помощь студентам 48 07.10.2007 16:43
Динамический массив Mickle Общие вопросы Delphi 8 19.06.2007 06:45
помогите: динамический массив в структуре tangar Общие вопросы C/C++ 4 28.12.2006 12:42