Проблема при выполнении функции - PullRequest
1 голос
/ 21 сентября 2011

Я пытаюсь запустить простую программу на C ++ (поскольку я только начинаю изучать C ++) и попробовал этот пример кода с веб-сайта как программу, которая складывает два числа вместе.Когда я запускаю программу, я никогда не получаю ошибок, но c всегда возвращает 0. Справка ??

#include <iostream.h>

int Add (int x, int y)
{

    std::cout << "In Add(), received " << x << " and " << y << "\n";
    return 0;
}

int main()
{
    std::cout << "I'm in main()!\n";
    int a, b, c;
    std::cout << "Enter two numbers here: ";
    cin >> a;
    cin >> b;
    std::cout << "\nCalling Add()\n";
    c=Add(a,b);
    std::cout << "\nBack in main().\n";
    std::cout << "c was set to " << c;
    std::cout << "\nExiting...\n\n";
    return 0;
}

Заранее спасибо.

Ответы [ 3 ]

2 голосов
/ 21 сентября 2011

Поскольку Add возвращает 0, c будет всегда равным 0. Вы должны, знаете, фактически добавить числа, которые вы передаете в Add, и вернуть , которые из функции.

2 голосов
/ 21 сентября 2011

Дайте этому водоворот. ПРИМЕЧАНИЕ. Добавьте возврат (x + y)

.
    #include <iostream>

    using namespace std;

    int Add(int x, int y)
    {
         std::cout << "In Add(), received " << x << " and " << y << std::endl;
         return (x+y);
    }

    int main()
    {
         std::cout << "I'm in main()!\n";
         int a, b, c;
         std::cout << "Enter two numbers: ";
         std::cin >> a;
         std::cin >> b;
         std::cout << "\nCalling Add()\n";
         c=Add(a,b);
         std::cout << "\nBack in main().\n";
         std::cout << "c was set to " << c;
         std::cout << "\nExiting...\n\n";
         return 0;
    }
1 голос
/ 21 сентября 2011

Ваша Add функция всегда возвращает 0, так что загадка, почему c всегда 0?:) Это должно быть return x + y.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...