Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
qorka
3 / 3 / 2
Регистрация: 20.11.2012
Сообщений: 29
1

Ошибка чтения строки

24.04.2016, 14:44. Просмотров 400. Ответов 2
Метки нет (Все метки)

есть задача считать из Edit данныe в таблицу ListView

но выползает ошибка в строках с числовыми параметрами
[C++ Error] Unit1.cpp(74): E2034 Cannot convert 'float *' to 'AnsiString'

причем я уже решал аналогичную задачу, и там практически одинаковые куски кода и ошибки не было

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
//отображение материалов
 void TForm1::Showmat()
 {
   MatList->Items->BeginUpdate();
   MatList->Items->Clear();
   for(int i = 0; i < nmat; i++)
   {
   TListItem* item  = MatList->Items->Add();
   sprintf(buf, "%1d", material[i].number);
   item->Caption    = buf;
   item->Data       = (void*)i;
   item->SubItems->Add(material[i].name);
   item->SubItems->Add(material[i].mu);  //ошибка
   item->SubItems->Add(material[i].rsvx); //ошибка
   }
   MatList->Items->EndUpdate();
 }
 
//сохранение материалов
void TForm1::matsave()
{
   FILE* file = fopen("mat.txt", "w");
 
   for(int i = 0; i < nmat; i++)
   {
        MATERIALS* p = &material[i];
      fprintf(file, "%3d:%-25.25s:%f:%f\n",
              p->number, p->name,  p->mu, p->rsvx);
   }
   fclose(file);
}
 
 
//чтение материалов
  void TForm1::matread()
{
  FILE* file = fopen("mat.txt", "r");
   nmat = 0;
 
   while(!feof(file))
   {
      MATERIALS* p = &material[nmat];
      memset(p, 0, sizeof(MATERIALS)); // очистка массива
      fscanf(file, "%d:%25c:%f:%f\n", p->number, p->name,  p->mu, p->rsvx);
      nmat++;
   }
   fclose(file);
}
 
//новый материал
void __fastcall TForm1::Button19Click(TObject *Sender)
{
   MATERIALS* p = &material[nmat];
   material[nmat].number = nmat+1;
   strcpy(p->name, Edit21->Text.c_str());   // копирует
   sscanf(Edit19->Text.c_str(), "%f", &p->mu);
   sscanf(Edit20->Text.c_str(), "%6f", &p->rsvx);
   nmat++;
   Showmat();
}
C++
1
2
3
4
5
6
7
typedef struct
{
   unsigned short        number;
   char                  name[17];
   float                 mu[20];
   float                 rsvx[21];
} MATERIALS;
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2016, 14:44
Ответы с готовыми решениями:

Ошибка чтения знаков строки
Добрый вечер. При запуске данного кода возникает ошибка в строке 13. Подскажите, пожалуйста, как ее...

Программа работает до определенного момента, потом вылетает, появляется ошибка чтения символов строки
drug.h #pragma once #include &lt;iostream&gt; using namespace std; class drug { protected: ...

Задача на строки и чтения из файла
Известны названия футбольных команд и результаты проведенных матчей футбольного турнира. Результат...

ошибка чтения из файла
задача такая: нужно считать из файла текст. написал программу, но она считывает только одну строку,...

Ошибка после чтения
Консольное приложение. Весь проект работает корректно, но в самом конце при выходе выдает ошибку...

2
StudAssistant
Эксперт
34811 / 27003 / 5019
Регистрация: 17.04.2006
Сообщений: 49,622
24.04.2016, 14:44
Закажите контрольную, курсовую, диплом или любую другую студенческую работу здесь.
2
Hikari
Хитрая блондиночка $)
1457 / 970 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
24.04.2016, 14:47 2
Цитата Сообщение от qorka Посмотреть сообщение
item->SubItems->Add(material[i].mu); //ошибка
Add() работает только с строками. А в билдере наверное вообще только с string.
А у тебя:
Цитата Сообщение от qorka Посмотреть сообщение
float mu[20];
Массив вещественных.
Так не пройдет.
1
qorka
3 / 3 / 2
Регистрация: 20.11.2012
Сообщений: 29
24.04.2016, 15:31  [ТС] 3
отлично, спасибо,убрал массивы и все заработало
0
StackOverflow
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.04.2016, 15:31

Ошибка чтения из файла
Народ, помогите понять, почему программа выдает ошибку при чтении из файла Входные данные: 6 2...

Ошибка чтения из потока
Здравствуйте. Считываю слова в цикле из потока. while(!input.eof()) { input &gt;&gt; word; ...

Ошибка чтения в структуру
Почему не вписывается my.month? #include&lt;iostream&gt; #include&lt;cstring&gt; using namespace std;...


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

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

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