2012-01-11 123 views
-2

如果我有這樣的一個主要功能:與Visual Studio和C++/OpenGL的COUT輸出

int main(int argc, char **argv) { 
    glutInit(&argc, argv); 
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB); 
    glutInitWindowSize (800, 600); 
    glutInitWindowPosition (100, 100); 
    glutCreateWindow ("A"); 

    init(); 
    glutIdleFunc(update); 
    glutDisplayFunc(draw); 
    glutReshapeFunc(resize); 
    glutKeyboardFunc(keyboard); 
    glutSpecialFunc(specialKeyboard); 
    glutMouseFunc(mouse); 

    cout<<x<<" "<<"Printed out variable x"<<endl; 
    cout<<y<<" "<<"Printed out variable y"<<endl; 
    cout<<z<<" "<<"Printed out variable z"<<endl; 
    glutMainLoop(); 
    return 0; 
} 

我在哪裏可以看到COUT調用的結果呢?

+5

控制檯窗口? – crashmstr 2012-01-11 16:56:46

+4

我想你沒有設置子系統鏈接器標誌爲CONSOLE。 – mkaes 2012-01-11 17:00:51

+0

哪個GLUT實現? – genpfault 2012-01-11 17:16:31

回答

8

如果您在控制檯應用程序項目中工作,那麼輸出應該出現在控制檯(類似命令提示符的窗口,可用OpenGL窗口打開)上。

如果您沒有在控制檯應用程序中工作,而您有一個Win32或Empty項目,那麼您必須將子系統鏈接器標誌設置爲CONSOLE,正如mkaes在他的評論中指出的那樣。要做到這一點(在Visual Studio 2010中):

  • 在解決方案資源管理器中右鍵單擊您的項目。
  • 點擊彈出列表底部的'屬性'。
  • 在左側的導航列表中,展開'鏈接器'並點擊'系統'。
  • 列表中的第一個變量應該標記爲「SubSystem」。
  • 單擊此變量的下拉列表,然後選擇'控制檯(/ SUBSYSTEM:CONSOLE)'
  • 應用設置並再次運行您的項目。