Я столкнулся с типичным No Entry Point Personality V0
Ошибка до и обойти это с помощью: -fno-exceptions
, Хотя в этот раз при использовании обходного пути cmd вылетел и запускается только первым cin >> line
программы.
Тем не менее, я могу запустить программу без проблем в MSYS.
Я собрал с:
g++ ReturnPointer.cpp -o ReturnPointer.exe (gave error)
g++ ReturnPointer.cpp -o ReturnPointer.exe -fno-exceptions (runs: MSYS Shell Only)
#include <iostream>
short factor(int, int*, int*);
int main()
{
int number, squared, cubed;
short error;
std::cout << "Enter a number (0 - 20 ): ";
std::cin >> number;
error = factor(number, &squared, &cubed);
if (!error)
{
std::cout << "number: " << number << "\n";
std::cout << "square: " << squared << "\n";
std::cout << "cubed: " << cubed << "\n";
}
else
std::cout << "Error encountered!!\n";
return 0;
}
short factor(int n, int* pSquared, int* pCubed)
{
short value = 0;
if (n > 20)
{
value = 1;
}
else
{
*pSquared = n * n;
*pCubed = n * n * n;
value = 0;
}
return value;
}
Конечно, это не конец света. Я просто расширяю свои знания в области C ++, которая меня очень удивляет. Хотя, если бы я когда-либо использовал указатели таким образом в более крупной программе … это превратилось бы в беспорядок.
Я просто хотел бы знать, что нужно сделать или чего мне не хватает, чтобы запустить это в CMD.
Задача ещё не решена.