Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
4 / 4 / 0
Регистрация: 09.04.2012
Сообщений: 44
Записей в блоге: 1
1

подскажите как исправить ошибку Form.cpp(37): E2141 Declaration syntax error

16.04.2012, 22:22. Показов 2077. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Отработать технику отображения дерева с использованием компонента TTreeView. Для этого в заголовке определить структуру, описывающую элементы дерева. Каждый элемент должен содержать следующие поля: номер, наименование и номер родительского элемента. В тексте программы создать и заполнить массив данных. Для элементов самого верхнего уровня ссылка на родительский элемент будет равна 0. Разработать функцию отображения элементов некоторого узла, рекурсивно вызывающую себя. В обработчике кнопки вызвать функцию отображения для элементов самого верхнего уровня.

Вот код программы:

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
typedef struct 
{
   int  number;
   char name[40];
   int  parent;
} TREE;
 
TREE tree[] = 
{
   { 1, ”Покупная продукция”, 0},
   { 2, ”Металлопрокат”,      1},
   { 3, ”Пиломатериалы”,      1},
   { 4, ”Краски”,             1},
   { 5, ”Лист стальной”,      2},
   { 6, ”Пруток стальной”,    2},
   { 7, ”Брус”,               3},
   { 8, ”Доска обрезная”,     3},
   { 9, ”Крепеж”,             1},
   {10, ”Винты”,              9},
   {11, ”Болты”,              9},
   {12, ”Гайки”,              9},
   {13, ”Винты потайные”,    10},
   {14, ”Винты полупотайные”,10}
}
 
void TreeBranch(int Parent, TTreeView* View, TTreeNode* Node)
{
   for(int i = 0; i < sizeof(tree)/sizeof(TREE); i++)
      if(tree[i].parent == Parent)
      {
         TTreeNode* node = View->AddChild(Node, tree[i].name);
         TreeBranch(tree[i].number, View, node);
      }
}
 
void __fastcall Tlab5Form::tree_btClick(TObject *Sender)
{
   treeview->Items->Clear();
   TreeBranch(0, treeview, NULL);
}
в этой строке выдает ошибку: не пойму в чем дело.
C++
1
void TreeBranch(int Parent, TTreeView* View, TTreeNode* Node)
Добавлено через 19 минут
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.04.2012, 22:22
Ответы с готовыми решениями:

Как исправить ошибку E2141 Declaration syntax error
Как исправить ошибку E2141 Declaration syntax error см. рис. В application все работает на ура....

Устранить ошибку !! [C++ Error] Unit1.cpp(26): E2141 Declaration syntax error
//--------------------------------------------------------------------------- #include &lt;vcl.h&gt;...

[BCC32 Error] Unit10.cpp(20): E2141 Declaration syntax error
void __fastcall TForm10::Button1Click(TObject *Sender) { double plosa(float r,int k,float h) ...

[C++ Error] Unit1.cpp(12): E2141 Declaration syntax error
Здравствуйте! Это моя первая тема, поэтому простите за ошибки и неточности. Суть вопроса в том,...

3
238 / 229 / 58
Регистрация: 27.10.2011
Сообщений: 249
16.04.2012, 22:26 2
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
//---------------------------------------------------------------------------
typedef struct
{
  int number;
  char name[40];
  int parent;
}TREE;
 
TREE tree[] =
{
  { 1, "Покупная продукция",  0},
  { 2, "Металлопрокат",       1},
  { 3, "Пиломатериалы",       1},
  { 4, "Краски",              1},
  { 5, "Лист стальной",       2},
  { 6, "Пруток стальной",     2},
  { 7, "Брус",                3},
  { 8, "Доска обрезная",      3},
  { 9, "Крепеж",              1},
  {10, "Винты",               9},
  {11, "Болты",               9},
  {12, "Гайки",               9},
  {13, "Винты потайные",     10},
  {14, "Винты полупотайные", 10}
};
//---------------------------------------------------------------------------
void TreeBranch(int Parent, TTreeView* View, TTreeNode* Node)
{
  for(int i = 0; i < sizeof(tree) / sizeof(TREE); i++)
    if(tree[i].parent == Parent)
      {
        TTreeNode* node = View->Items->AddChild(Node, tree[i].name);
        TreeBranch(tree[i].number, View, node);
      }
}
//---------------------------------------------------------------------------
1
4 / 4 / 0
Регистрация: 09.04.2012
Сообщений: 44
Записей в блоге: 1
16.04.2012, 22:35  [ТС] 3
Все работает.Спасибо.
Только вот не увидел,что вы исправили в коде.
0
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
16.04.2012, 22:37 4
Кавычки разные! и отввыкайте от копипаста
1
16.04.2012, 22:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.04.2012, 22:37
Помогаю со студенческими работами здесь

[C++ Error] Unit1.cpp(11): E2141 Declaration syntax error
Доброго времени суток, помогите с проблемой Ошибка падает на строку TMan *Man; Unit1.cpp ...

[C++ Error] Unit2.cpp(47): E2141 Declaration syntax error
Не могу понять в чём проблема, код ошибки Unit2.cpp(47): E2141 Declaration syntax error Вот...

[C++ Error] Unit1.cpp(25): E2141 Declaration syntax error
Борланд ругается на неправильный синтаксис в этом куске программы void __fastcall...

E2141 Declaration syntax error
Всем доброго времени суток, уважаемые форумчани! Прошу помочь вас совместно со мной найти ошибку!...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru