Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/107: Рейтинг темы: голосов - 107, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 13.11.2010
Сообщений: 3

Ошибка E2451 Undefined symbol

22.11.2010, 02:15. Показов 19986. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Начинаю учится в с++ Builder 6, компилирую программу:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <conio.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
        short x = 32767;
        cout << "x = " << x << endl;
        x++;
        cout << "x = " << x << endl;
        getch();
        return 0;
}
//---------------------------------------------------------------------------
Выдает ошибки:
[C++ Error] Unit1.cpp(13): E2451 Undefined symbol 'cout'
[C++ Error] Unit1.cpp(13): E2451 Undefined symbol 'endl'

Что мне нада сделать? Напишите плиз по подробней.

Незнаю че я нахимичил сейчас получаются ошибки:

[Linker Error] Unresolved external '__InitVCL' referenced from C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\LIB\CP32MTI.LIB| crtlvcl
[Linker Error] Unresolved external '__ExitVCL' referenced from C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\LIB\CP32MTI.LIB| crtlvcl
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.11.2010, 02:15
Ответы с готовыми решениями:

Ошибка E2451 Undefined symbol 'Form4'
Добрый день, программисты. Я новичок в программировании и у меня возник такой вопрос: я создал формы , кнопки. С помощью кнопок...

E2451 undefined symbol
Помогите исправить ошибку строчка: void TForm1::compute(ang, scl, inv, flw) текст ошибки: e2451 undefined symbol но ang уже...

E2451 Undefined symbol
Unit2.cpp(45): E2451 Undefined symbol 'Memo1' Unit2.cpp(61): E2268 Call to undefined function 'strcat_s' Unit2.cpp(100): E2451...

9
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
22.11.2010, 09:32
По ходу тут надо ещё библиотеку подключить

#include <iostream.h>

Добавлено через 11 минут
Цитата Сообщение от Sasha Посмотреть сообщение
По ходу тут надо ещё библиотеку подключить

#include <iostream.h>
Вернее не библиотеку, а заголовочный файл

#include <iostream.h>
0
0 / 0 / 0
Регистрация: 13.11.2010
Сообщений: 3
22.11.2010, 21:36  [ТС]
Цитата Сообщение от Sasha Посмотреть сообщение
По ходу тут надо ещё библиотеку подключить

#include <iostream.h>

Добавлено через 11 минут


Вернее не библиотеку, а заголовочный файл

#include <iostream.h>
После подключения библиотеки выдает такие ошибки :

[Linker Error] Unresolved external '__InitVCL' referenced from C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\LIB\CP32MTI.LIB| crtlvcl
[Linker Error] Unresolved external '__ExitVCL' referenced from C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\LIB\CP32MTI.LIB| crtlvcl
0
18 / 17 / 7
Регистрация: 06.11.2009
Сообщений: 167
22.11.2010, 22:33
только что сделал такой же проект, как у тебя, всё работает. вот код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <conio.h>
#include <iostream.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
          short x = 32767;
        cout << "x = " << x << endl;
        x++;
        cout << "x = " << x << endl;
        getch();
        return 0;
}
//---------------------------------------------------------------------------
0
0 / 0 / 0
Регистрация: 13.11.2010
Сообщений: 3
23.11.2010, 07:32  [ТС]
Цитата Сообщение от smithy69 Посмотреть сообщение
только что сделал такой же проект, как у тебя, всё работает. вот код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <conio.h>
#include <iostream.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
          short x = 32767;
        cout << "x = " << x << endl;
        x++;
        cout << "x = " << x << endl;
        getch();
        return 0;
}
//---------------------------------------------------------------------------

спс огромное за помощь, я нашел свою ошибку благодаря Вам, я забыл включить библиотеку изза этого все проблемы=)
ЗЫ:Тему можна офф
0
 Аватар для System16v
3 / 3 / 1
Регистрация: 19.02.2014
Сообщений: 115
23.02.2015, 14:01
Народ,подскажите начинающему. Начал изучать книгу С++,дошел до главы "Классы и объекты",в книге есть пример - вбил код в C++ Builder,но программа не компилируется,пишет три ошибки,подскажите что ему не нравится?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <cstdlib>
using std::cout;
using std::cin;
using std::endl;
 
class Gradebook
{
public:
        void displayMessage()
        {
                cout << "Welcome to the Grade Book!" << endl;
        }
};
        int main()
        {
                GradeBook myGradebook;
                myGradeBook.displayMessage();
                system("pause");
                return 0;
        }
1) Е2451 Undefined symbol 'GradeBook' 2) E2379 Statement missing ; 3) E2451 Undefined symbol 'myGradeBook' . 1) ошибка в строке 17ая 2) так же 17ая 3) 18ая
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
23.02.2015, 14:11
Цитата Сообщение от System16v Посмотреть сообщение
GradeBook
Класс называется Gradebook, а объект создаёшь с GradeBook. Регистр букв учитывай
0
 Аватар для System16v
3 / 3 / 1
Регистрация: 19.02.2014
Сообщений: 115
24.02.2015, 14:59
Sasha, спасибо большое,ужас...надо ж было так протупить то... , исправил,запустилось

Добавлено через 23 часа 16 минут
Ну подскажите еще пожалуйста. Дошел до главы где класс представляется в раздельных файлах. С раздельным main запустилось,а с раздельным интерфейсом не могу запустить - сыпит кучу ошибок (одну и туже),перевести я ее перевел,но не пойму что мне сделать нужно,чтоб исправить её?
Файл GradeBook.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
//---------------------------------------------------------------------------
 
 
#include <string>
#include "GradeBook.h"
 
using namespace std;
        GradeBook::GradeBook(string name)
        {
        setCourseName(name);
        }
        void GradeBook::setCourseName(string name)
        {
        courseName=name;
        }
        string GradeBook::getCourseName()
        {
                return courseName;
        }
        void GradeBook::displayMessage()
        {
        cout << "Welcome to the GradeBook for\n"<<getCourseName()<<"!"<<endl;
}
Файл GradeBook.h
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
//---------------------------------------------------------------------------
 
#include <iostream>
 
using namespace std;
 
class GradeBook
{
        public:
                GradeBook (string name)
                {
                        setCourseName (name);
                }
                void setCourseName (string name)
                {
                courseName = name;
                }
                string getCourseName()
                {
                return courseName;
                }
                void displayMessage()
                {
                cout << "Welcome to the Grade Book for\n" << getCourseName()<< "!"<<endl;
                }
                private:
                string courseName;
        };
Файл GradeBook1.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <cstdlib>
#include <string>
#include "GradeBook.h"
 
using namespace std;
        int main()
{
        GradeBook gradeBook1 ("CS101 Introduction to C++ Programming");
        GradeBook gradeBook2 ("CS102 Data Structures in C++");
        cout << "gradeBook1 created for:" << gradeBook1.getCourseName()
        << "\ngradeBook2 created for:" << gradeBook2.getCourseName()<<endl;
        system("pause");
        return 0;
}
Выдает 4 ошибки, все в GradeBook.cpp, 9,13,17,21 строки соответственно
E2171 body has already been defined for function 'GradeBook::gradeBook(string)'
E2171 body has already been defined for function 'GradeBook::setCourseName(string)'
E2171 body has already been defined for function 'GradeBook::getCourseName()'
E2171 body has already been defined for function 'GradeBook::displayMessage()'
Добавлено через 1 час 21 минуту
Нашел тут ошибку,сам виноват,лажанул с GradeBook.h, исправил. Теперь другая печаль....Нажимаю запуск,ничего не происходит , такое ощущение что программа запустилась,но сразу закрылась,хотя пауза есть.Что может быть не так?Project->Compile Unit вызываю,вообще тишина,ни одну строчку не компилит,да что ж такое
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
24.02.2015, 16:47
а если вместо system("pause"); использовать getch() c conio.h
0
 Аватар для System16v
3 / 3 / 1
Регистрация: 19.02.2014
Сообщений: 115
25.02.2015, 13:55
Sasha, Пробовал и гетч и cin.get,одно и тоже ,просто запускается и типа исчезает,я уж во все файлы запихивал,ничего не помогло.От чего это вообще такое?Ведь в предыдущей главе там таже прога ток с 2мя файлами и все работает,а в этой нифига . Project->Compile Unit кстати я ошибся,компилит все нормально,но вот результат не вижу

Добавлено через 1 час 50 минут
Попробуйте кто-нибудь запустить если не трудно,может у вас заработает?

1й файл - GradeBook.h
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <vcl.h>
#include <iostream>
#include <cstdlib>
#include <string>
 
using namespace std;
 
class GradeBook
{
        public:
                GradeBook(string);
                void setCourseName(string);
                string getCourseName();
                void displayMessage();
        private:
                string courseName;
        };
2й файл - GradeBook.cpp
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
#include <vcl.h>
#include <iostream>
#include <cstdlib>
#include <string>
#include <conio.h>
#include "GradeBook.h"
 
using namespace std;
        GradeBook::GradeBook(string name)
        {
        setCourseName(name);
        }
        void GradeBook::setCourseName(string name)
        {
        courseName=name;
        }
        string GradeBook::getCourseName()
        {
                return courseName;
        }
        void GradeBook::displayMessage()
        {
        cout << "Welcome to the GradeBook for\n"<<getCourseName()<<"!"<<endl;
        }
3й файл - GradeBook.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <cstdlib>
#include <string>
#include <conio.h>
#include "GradeBook.h"
 
using namespace std;
        int main()
{
        GradeBook gradeBook1 ("CS101 Introduction to C++ Programming");
        GradeBook gradeBook2 ("CS102 Data Structures in C++");
        cout << "gradeBook1 created for:" << gradeBook1.getCourseName()
        << "\ngradeBook2 created for:" << gradeBook2.getCourseName()<<endl;
        system("pause");
        return 0;
}
Или все таки в коде где ошибка?Но все ж компилится...не видно ток результата

Добавлено через 19 часов 12 минут
Ужас...Запустил то наконец-то...В принципе я так и думал что в этом ошибка,только решения не знал,получилось методом тыка.Ошибка была в выполнении операций перед запуском кода. Сейчас когда ковырялся увидел,что при создании нового юнит файла в проекте,у него есть 2вкладки 1ая собственно для (не знаю как правильно назвать) для основного кода,а 2ая вкладка с пометкой *.h, вбил туда код определения фукнции,запускаю - опять горы ошибок.Но уже подумал что все же двигаюсь в правильном направлении...Начал тыкать дальше,пытаюсь сохранить - не получается,пишет нельзя юнит сохранить с расширением *.h,попробовал просто сохранить - смотрю он сам сохранил в 2 разных файла,один cpp другой h. Пробую запустить - и случилось чудо,все запустилось. Ужас какой...в билдире с ума сойти можно,пока допрешь как запускать правильно. Я так понял порядок действий такой - создать консольный проект - вбить код определения функции - добавить новый юнит - вбить код основной main - во вкладке .h вбить код определения класса - нажать сохранить оба файла (сохранятся в 3ех файлах) - запуск. В билдере еще нереально бесит сохранения...зачем он столько раз сохраняет?Запускаешь билдер - просит сохранить,нажимаешь новый файл - просит сохранить - выходишь опять просит сохранить хотя сохранял уже,просто такое впечатление что делает это по 50 раз одно и тоже с кучей файлов...Но зато хоть не такой капризный как С++ просто,почему-то в билдере допустим прога работает - вбиваешь тоже самое в С++ - сыпит кучу ошибок и не запускается.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.02.2015, 13:55
Помогаю со студенческими работами здесь

E2451: Undefined symbol 'A'
void __fastcall TForm1::Button1Click(TObject *Sender) { size1=StrToInt(Form1-&gt;Edit1-&gt;Text); size2=StrToInt(Form1-&gt;Edit2-&gt;Text); ...

E2451 Undefined symbol 'PaintBox1'
Здравствуйте. Как можно использовать PaintBox вне событий? Лучше бы как лишние функции и переменные закинуть как-то в другой файл. ...

E2451 Undefined symbol 'List'
Есть вот такой кусок кода и есть три ошибки с листами. Помогите или подскажите что нужно делать ...

E2451 Undefined symbol 'Edit1'
Не могу разобраться. В первый раз пишу программы на c++ Builder 6. Какой бы код не написал , выдает ошибку Unit1.cpp(25): E2451...

[C++ Error](248): E2451 Undefined symbol 'FFTPeacks'
Здравствуйте, пишу свой плеер с использованием bass.dll Завис на визуализации. Вот есть код: void draw(); { float...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru