C'est normal, un programme console n'est en principe pas conçu pour être lancé de cette manière. La manière de faire la plus propre est d'ouvrir une console en exécutant la commande cmd dans le menu Démarrer->Exécuter. Une fois la console ouverte, il suffit de te rendre dans le bon répertoire à l'aide de la commande:
cd C:\Chemin\Vers\Mon\Executable.exe
Ensuite, il suffit d'exécuter ton programme en écrivant son nom devant l'invite de commande.
Sinon, si tu tiens vraiment à ouvrir un programme en cliquant dessus, tu peux placer un appel à la fonction ci-dessous à la fin de ton programme (juste avant l'instruction return):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| #include <stdio.h>
void pause(char const *message)
{
int c;
if (message != NULL)
{
printf("%s", message);
fflush(stdout);
}
if ((c = fgetc(stdin)) != '\n' && c != EOF)
{
}
} |
Mais bon, à priori, un programme console étant fait pour fonctionner en console, je déconseille de pratiquer de la sorte.
EDIT: Désolé, j'ai répondu à côté, j'avais mal lu ton post. Je croyais que tu travaillais sur un programme console. J'a vais pas vu qu'il s'agissait d'un programme SDL. Au temps pour moi.
Thierry
Partager