나는 다음 main() 메소드의 모든 것을 내 C의 ++ 응용 프로그램을 실행하면 OK입니다 :C++에서 _tmain()과 main()의 차이점은 무엇입니까?
int main(int argc, char *argv[])
{
cout << "There are " << argc << " arguments:" << endl;
// Loop through each argument and print its number and value
for (int i=0; i<argc; i++)
cout << i << " " << argv[i] << endl;
return 0;
}
내가 기대 내 인수가 인쇄되는 것을 얻을. 그러나
, 내가 _tmain 사용하는 경우 :
가int _tmain(int argc, char *argv[])
{
cout << "There are " << argc << " arguments:" << endl;
// Loop through each argument and print its number and value
for (int i=0; i<argc; i++)
cout << i << " " << argv[i] << endl;
return 0;
}
그냥 각 인수의 첫 번째 문자를 표시합니다.
이 문제의 원인은 무엇입니까?
그들이 tcout도 제공하는지 궁금하네요? 그래서 사람은 단지 tcout << argv [n];을 할 수 있습니다. 그리고 그것은 Ansi와 Unicode 모드에서 wcout으로 해석합니다. 나는 그것이이 상황에서 그를 위해 유용 할 수 있다고 생각한다. +1 물론, 좋은 대답 :) –
UNICODE를 사용하지 못하게하는 데 어떤 단점이 있습니까? – joshcomley
@Johannes Schaub - litb : AFAIK, 그들은 tcout을 제공하지 않습니다 (비록 그들이 cout과 wcout를 제공하더라도). Visual C++ 2003에서는 TCHAR을 사용하고자하는 다른 모든 STL 관련 심볼을 정의 및 정의하거나 typedef를 정의해야했습니다. Visual C++ 2008 또는 2010에 대해서는 잘 모릅니다. – paercebal