2011-09-20 7 views
1

간단한 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 것이다 항상 당신은, 당신도 알다시피, 실제로 Add에 당신이 전달하는 번호를 추가하고 함수에서 것을 을 반환 할 필요가 0이.

+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; 
    } 
관련 문제