2014-02-20 11 views
-1

다음은 명령 줄에서 보낸 모든 숫자를 합한 간단한 프로그램입니다. 그것은 임의의 수의 값을 취해야합니다. 각 줄마다 0을 계속 유지합니다. 나는 몇 가지 변경을 피곤했습니다 그러나C++ 간단한 포인터 프로그램

#include <iostream> 
#include <cstdlib> 

using namespace std; 

int main(int argc, char *argv[]) 
{ 
    for (int i = 0; i < argc; i++) 
{ 
    int sum=0; 
    sum+=atoi("argc[i]"); 
    cout << sum << endl; 
} 
return 0; 
} 
+0

책은 이것에 대해 아무것도 말하지 않는다. 이것은 매우 간단한 문제'가 caustr01 @ – caustr01

+0

변경'atoi 함수 ("는 argc [I]")이었다 atoi 함수를 사용하는 방법과 main()에서 어떤 변수가 명령 행 옵션 (이 경우에는 argv)을 제공하는지와 같은 C++ 구문을 찾으면 실제로 모든 Google 검색에서 설명했을 것입니다. – Avt

+1

이 아닌 진정한 전혀 그게 전부 (는 argc는 [I]) atoi 함수'에'여기에 게시 메신저없는 바보가 내 마지막 옵션 – lemondrop

답변

3

"argc[i]"atoi로 변환 할 때 그래서 0을 제공하는 리터럴 문자열입니다 동일한 출력을 제공하기 위해 계속된다! sum 루프 전에 초기화되어야한다

int main(int argc, char *argv[]) { 
int sum=0; 
for (int i = 1; i < argc; i++) { 
    sum += atoi(argv[i]); 
} 
cout << sum << endl; 
return 0; 
} 

종래 argv[0] 프로그램의 이름 (또는 적어도 프로그램을 호출하는 명령 라인에서 사용 된 이름), 그래서 더 인덱스 1

시작

도서를 더 읽고 컴퓨터를 실험하기 위해 12 시간을 보내야합니다.. 여기에 그런 기본적인 질문을하는 것은 당신을 전혀 도울 수 없으며 (무례한 것으로 간주됩니다 ...).

은 (GCC를 사용하는 경우 g++ -Wall -g으로, 예를 들어)를 컴파일 할 때 디버깅 정보와 모든 경고를 활성화 하는 것을 잊지 마십시오. 그런 다음 디버거를 사용하는 방법을 (예 : gdb) 알아보십시오. 외부 루프

+0

그게 정말 고마워요! 그리고 예의 바르게 대해. – caustr01

-4

움직임 파라미터 합!

#include <iostream> 
#include <cstdlib> 

using namespace std; 

int main(int argc, char *argv[]) 
{ 
    int sum=0; 
    for (int i = 0; i < argc; i++) 
    { 

    sum+=atoi(argv[i]); 
    cout << sum << endl; 
    } 
return 0; 
} 
+2

정말 아무것도 고쳐주지 않습니다. – lemondrop

+0

그게 전부입니까? –

+0

내가 그뿐만 아니라 시도하고 합 내가 루프 – caustr01

-1

기본 사항이 명확하지 않으므로이 책을 읽으십시오. 프로그램은 다음과 같이해야합니다 :

#include <iostream> 
#include <cstdlib> 

using namespace std; 

int main(int argc, char *argv[]) 
{ 
    int sum=0; 
    for (int i = 0; i < argc; i++) 
    { 

    sum+=atoi(argv[i]); 
    } 
    cout << sum << endl; 
return 0; 
} 
+1

이것은 여전히 ​​잘못되었습니다. –

+0

@BartekBanachewicz 편집 된 답변보기 –

+0

코드를 올바르게 포맷하면 @ Basile의 대답에 아무것도 추가되지 않습니다. –