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

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.

0

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

0

Jak pomoże to tu daję kod aplikacji

#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;
}

0

Ale funkcja main jest

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

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?

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ć
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. ;/

1 użytkowników online, w tym zalogowanych: 0, gości: 1