Se il progetto è un progetto GUI, non verrà visualizzata alcuna console. Per cambiare il progetto in uno console devi andare al pannello delle proprietà del progetto e impostare:
- In " linker-> System-> SubSystem " il valore " Console (/ SUBSYSTEM: CONSOLE) "
- In " C / C ++ -> Preprocessore-> Definizioni preprocessore " aggiungi la definizione " _CONSOLE "
Questa soluzione funziona solo se avevi il classico punto di ingresso " int main () ".
Ma se sei come nel mio caso (un progetto openGL), non è necessario modificare le proprietà, poiché funziona meglio:
AllocConsole();
freopen("CONIN$", "r",stdin);
freopen("CONOUT$", "w",stdout);
freopen("CONOUT$", "w",stderr);
printf e cout funzioneranno come al solito.
Se chiami AllocConsole prima della creazione di una finestra, la console apparirà dietro la finestra, se la chiami dopo, apparirà davanti.
Aggiornare
freopen
è deprecato e potrebbe non essere sicuro. Usa freopen_s
invece:
FILE* fp;
AllocConsole();
freopen_s(&fp, "CONIN$", "r", stdin);
freopen_s(&fp, "CONOUT$", "w", stdout);
freopen_s(&fp, "CONOUT$", "w", stderr);