Znów mam niestety problem. Zadanie polega na tym, żeby za pomocą funkcji "wczytajLiczbe" przekazać do funkcji main liczbę wpisaną przez użytkownika. Program ma być zabezpieczony przed wprowadzeniem błędnych wartości.
I oczywiście nie działa. Gdy próbuję go uruchomić za pomocą Visual Studio pojawia mi się taki komunikat o błędzie:
LNK2019 nierozpoznany symbol zewnętrzny _WinMain@16 przywołany w funkcji "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) wczytywanie liczby za pomocą funkcji.
Cała zawartość funkcji main była już zapisana w treści zadania.
Ten błąd wskazywałby to, że nie można użyć zastosowanej w treści zadania domowego instrukcji int liczba = wczytajLiczbe(). Jak zatem wywołać funkcję wczytajLiczbe w funkcji main? I czy trzeba przypisywać jej jakieś argumenty? A jeśli tak, to jakie?
Z góry bardzo dziękuję za pomoc.
#include <iostream>
#include <limits>
int wczytajLiczbe()
{
int liczba;
std::cin >> liczba;
while (std::cin.fail())
{
std::cin.clear();
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
std::cout << "To nie jest liczba. Podaj liczbe: ";
std::cin >> liczba;
}
return liczba;
}
int main()
{
std::cout << "Podaj liczbe: ";
wczytajLiczbe();
int liczba = wczytajLiczbe();
std::cout << "Podales liczbe: " << liczba << std::endl;
return 0;
}