Błąd kompilacji - mingw32.a(main.o)

Błąd kompilacji - mingw32.a(main.o)
ZP
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 38
0

Otóż mam problem, podczas kompilacji programu w błędach (logach) kompilatora pokazuje oto taki komunikat.

C:\Program Files\Dev-Cpp\MinGW32\lib\libmingw32.a(main.o) In function main':: [Linker Error] undefined reference to WinMain@16'
ld returned 1 exit status

Może ktoś pomóc z rozwiązaniem problemu? Kompilator to BloodSheed wxDev-C+ +. Z góry dzięki.

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Wygląda jakbyś miał złą sygnature funkcji main / brak takiej funkcji i kompilator protestuje że nie moze entry pointa zrobić w aplikacji.

ZP
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 38
0

Jak pomoże to tu daję kod aplikacji

Kopiuj
#include <cstdlib>
#include <iostream>
#include <string>
#include <kod.h>
using namespace std;
//funkcje kododwanie od kodowanie, szyfry
void kod();
void odkod();
void kod_pierwszy();
void kod_drugi();
void odkod_pierwszy();
void odkod_drugi();
int menu()
{
//wartosci i switch dla ustalenia co chcesz robic
byte znak;
cin >> znak;
switch (znak)
{
case '1' :
cout << "Brawo wybrales odkodowanie";
break;
default :
cout << "Blad sprobuj jeszcze raz :D";
}
system ("pause");
return 0;
}

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Ale funkcja main jest

O RLY? Pokaż mi w tym kodzie funkcje main. I dare you. Widze w tym kodzie funkcje:

Kopiuj
void kod();
void odkod();
void kod_pierwszy();
void kod_drugi();
void odkod_pierwszy();
void odkod_drugi();
int menu();

Która z nich nazywa się main?

MarekR22
  • Rejestracja: dni
  • Ostatnio: dni
0

to jest błąd linkera nie kompilatora. Kod jest poprawny składniowo, ale czegoś mu brakuje.
Dosłownie oznacza, że jakiś symbol został zadeklarowany, ale nie jest zdefiniowany (zaimplementowany).
Powodów może być wiele:

  • tak jak napisał @shalom zła sygnatura funkcji main (ale chyba o tym chyba gcc daje błąd kompilacji)
  • brak funkcji main
  • potrzebny plik źródłowy nie jest częścią projektu
  • inne bardziej zakręcone, o których na razie nie musisz wiedzieć
ZP
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 38
0

A dobra ogarnąłem dodałem po int main() jest ; i dlatego error dzięki :D
Edit: jednak nie ma to tylko u @Shalom było przez przypadek chyba. ;/

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.