2011-09-20 99 views
1

我试图运行一个简单的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; 
} 

在此先感谢。

回答

2

由于Add返回0,c总是为0。你需要,你知道吗,其实你传递的数字加入到Add并返回从功能。

+0

所以这是一个用户错误,而不是程序错误... gotcha :) –

1

你的Add函数总是返回0,所以这是一个神秘的原因,为什么c总是0? :)它应该是return x + y

+0

谢谢!我很惊讶,我没有注意到,但我现在得到它:) –

2

给这个旋转。注意:添加退货(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; 
    }