2014-04-01 3 views
1

이것은 매우 간단한 프로그램으로 C++의 첫 번째 수업에서 배웠습니다. 그러나 나는 뭔가 잘못 생각한 것을 잊어 버렸습니다. 내가 코드에서 누락 된 부분을 이해하도록 도와주십시오.C++로 인쇄하지 않습니다.

int main(int argc, char**argv) { 
std::cout << "Welcome ..." << cout::endl; 

if (argc > 1) { 
    std::cout << std::endl << "Arguments:" << std::endl; 
    for (int i = 1; i < argc; i++) { 
     std::cout << i << ": " << argv[i] << std::endl; 
     } 
    } 
} 
+2

오타 :'cout :: endl'은'std :: endl'이어야합니다. (또는 그 시점에서 특별히 출력을 플러시하지 않는 한''\ n ''). –

답변

8

귀하의 시선이 잘못되었습니다. 이 옵션을 사용합니다 : 그것은 std::endl 대신 cout::endl해야

std::cout << "Welcome ..." << std::endl; 
1

. 컴파일러 출력을보십시오. GCC에서 알려줍니다.

cout.cpp: In function 'int main(int, char**)': 
cout.cpp:3:31: error: 'cout' has not been declared 
std::cout << "Welcome ..." << cout::endl; 
          ^

유용합니다.

대신 std::endl를 사용하여, 당신은 언제나 \n를 사용할 수 있습니다

int main(int argc, char**argv) { 
    std::cout << "Welcome ...\n"; 

    if (argc > 1) { 
     std::cout << "\nArguments:\n"; 
     for (int i = 1; i < argc; i++) { 
      std::cout << i << ": " << argv[i] << "\n"; 
     } 
    } 
} 

std::endl 버퍼 유용 할 수 있지만 항상 필요하지가 호출 될 때마다, 플러시합니다.

관련 문제