我有一个基本程序来创建一个带有SDL的窗口,当我编译和运行程序时它给我的唯一一件事就是命令行提示符Press <RETURN> to close this window...
我不知道是什么导致了这个问题。有人知道如何解决这个问题吗?
这是main.cpp文件
#include <iostream>
#include <SDL2/SDL.h>
int main(int argc, char* argv[]) {
SDL_Init(SDL_INIT_VIDEO);
SDL_Window* window;
window = SDL_CreateWindow(
"Requiem",
SDL_WINDOWPOS_UNDEFINED,
SDL_WINDOWPOS_UNDEFINED,
640,
480,
SDL_WINDOW_SHOWN|SDL_WINDOW_OPENGL
);
if(window == NULL) {
std::cout << "Could not create window: " << SDL_GetError() << std::endl;
return 1;
}
SDL_Delay(3000);
SDL_DestroyWindow(window);
SDL_Quit();
return 0;
}
如果需要,这里是.pro
TEMPLATE = app
CONFIG += console
CONFIG -= qt
LIBS += -L C:/Users/Zach/Documents/dev/libs/SDL2-2.0.1/i686-w64-mingw32/lib -lmingw32 -lSDL2main -lSDL2
INCLUDEPATH += C:/Users/Zach/Documents/dev/libs/SDL2-2.0.1/i686-w64-mingw32/include
SOURCES += main.cpp
和我看到的图片
答案 0 :(得分:2)
转到项目设置,然后转到“运行”选项卡,然后取消选中“在终端中运行”。
然后进入.pro文件并注释掉“CONFIG + = console”。
然后转到Project&gt;全部清洁。
然后重建并运行您的项目。
编辑:
这将使stdout
和stderror
重定向到Qt Creator中的“应用输出”标签。
你的std::cout
没有出现的原因可能是因为它没有被冲走。你必须结束一条线才能出去。
std::cout << "Some text" << std::endl;
希望有所帮助。