. ..
t´as un delete[] strValue qui traien à la ligne 43. Supprime le et ne laisse que celui de la ligne 73, c´est suffisent.
je pense vraiment que tu devrait relire attentivement ton code à plusieur reprise en te demandant ce que tu fait à chaque étape car tes erreurs était toutes de ce type, de simple inatention, que l´on peut corriger facilement avec un peu d´attention.
Merci mais même en supprimant ca ne marche pas et en fait, le premier est pour libérer la mémoire avant de fermer le programme ( puisque ca a planté a ce niveau là) et le dernier c´est pour lorsqu´on quitte le programme parce que c´est la fin et que y´a pas de plantage.
slt a tous,
durant mon programme, je demande de taper la reponse au calcul donne en appuyant sur les touches du clavier. j´ai donc mis dans mon code:
while(1)
{
while(SDL_PollEvent(&))
{
if(event.type==SDL_KEYDOWN)
{
if ( SDL_KEYDOWN==nombre1+nombre2)
{
FSOUND_Stream_Play(1,reussi);
FSOUND_Stream_Play(2,sonsreussi);
SDL_Rect rect6;
ChargeBMP("reussi.bmp");
rect6.x=0;
rect6.y=0;
SDL_BlitSurface(firstscreen,NULL,screen,&6);
SDL_Flip(screen);
waitkey();
addition();
}
if ( SDL_KEYDOWN!=nombre1+nombre2)
{
FSOUND_Stream_Play(1,rate);
FSOUND_Stream_Play(2,sonsrate);
SDL_Rect rect7;
ChargeBMP("rate.bmp");
rect7.x=0;
rect7.y=0;
SDL_BlitSurface(firstscreen,NULL,screen,&7);
SDL_Flip(screen);
waitkey();
addition();
}}}}}
et ca marche tres bien sauf qu´il ne prend en compte que la premier touche pressée. je m´explique: si comme calcul en a 30+5, la reponse est 35 et donc on presse d´abord le 3 puis le 5 sur le clavier. seulement, des qu´on a presser sur une touche il vérifie l´égalite et fatalement 30+5 n´est pas égal à 3.
ma question est donc comment faire pour qu´il prenne en compte 2 touches
un tout grand merci d´avance
PS:j´utilise la librairie graphique SDL
merci
voici mon code:
int a;int b;int r; char op; cout < < " entrez le premier nombre";cin > > a;cout < < " entrez l´operateur";cin > > op;cout < < " entrez le second nombre";cin > > ; if(op=="+") {r=a+b;}else if(op=="-"){r=a-b;}else if(op=="*"){r=a*b;}else if(op=="/") {r=a/b;}else{cout < < " operateur non valide\n"; }cout < < " le resultat est" < < r < < " \n";
Quelqu´un peut me dire pourquoi ma calcullete ne marche pas? ![]()
Tav : evidemment que ça plante après le premier delete puice que ta chaine n´existe plus.
Tu ne peut pas l´afficher et windows plante.
Si t´enlève le premier delete[] strValue; ( celui de la ligne 43) ça marchera, le laissé en se disant qu´il est là au cas ou le reste plante est une aberration parce qu´avec ça c´est obligatoire que le reste plante. ( j´ai essayé ton prog juste en l´enlevant et ça marche tout a fait)
C´est ce genre d´erreur de logique que je te conseille de surveiller avec attention en te demandant à chaque instant pourquoi tu fait telle ou telle chose.
Escuse Dnob!
J´ai cru que y´en avait que deux:
celui si sa plante, après la fermerture de la clé et avant le return et celui qui est en fin de programme.
Malentendu.
Est-ce que quelqu´un ( en Win32) saurait insérer une gif animée dans une fenêtre s´il-vous-plait?
En fait mon but serait de faire une toute petite fenêtre dans laquelle un chien cours ( en gif déjà faite) de droite à gauche et vice versa qui se superpose à toutes les autres fenêtres ouvertes du programme et en les mettant " Enable true" de façon à faire une barre de défilement, mais simplifiée pour faire patienter l´utilisateur . ..
Merci d´avance.
pour affiché un gif animé ils te faut un controle qui les supporte.
Ils doit y avoir des controle d´affichage d´image natif qui le font, mais je ne suis même pas sur.
Le plus simple ( en fait c´est la seul méthode que je connaisse) c´est d´utiliser un controle internet explorer.
Mais le faire en c++ dépasse ce que je sais faire.
pour t´aider voici quand même l´artile de la msdn qui t´expliquera comment faire : http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/prog_browser_node_entry.asp
mais faut faire gafe car la plupart de leur explications se bases sur les MFC et pas sur du win32 pur.
Sinon pour ce qui est de garder la fenêtre au premier plan, ça c´est très facile et ej peut t´expliquer comment le faire :
il suffit d´un appel à :
SetWindowPos(hWnd,HWND_TOPMOST,X,Y,cx,cy,SWP_SHOWW
INDOW | SWP_NOACTIVATE);
ou hWnd c´est le handle de la fenêtre à mettre en première position x y cx et cy la heuteur larguer . .. de la fenêtre.
et les constantes disent d´afficher la fenêtre sans lui donner le focus.
Pour rendre à la fenêtre son comportement normale, il suffit de remplacer HWND_TOPMOST par HWND_NOTOPMOST
hum...
Bon en fait, j´ai des petits probléme, je vais continuer un projet, pour sa il me faudrais connaitre quelque petite chose.
Je vais faire un petit systeme de parcours,en fait sa sera un jeux de danse mais au final il faudra arrivé a la fin du parcour pour arrivé a un endrois comme une ville
par exemple :
gauche, droite, haut, bas, de plus en plus rapide suivant ni niveau du jeux.
j´aimerais connaitre une fonction pour faire un deconte, et mettre du son.
je me demande si je dois utilise de la sdl pour du son, arf je sais pas trop :/ j´ai pas envie d´utilise de la sdl sa me destabilise, c´etais pas mon but !
hum... il et vrais que sa serai sympas de le continuer !
tu crois qu´on voit pas quand tu up ton post ?
bon, pour l´instant tu le fait avec quoi ton projet, juste dans la console ?
lol, au moin je le fait discretement !
j´utilise que la console effectivement.
pourquoi sa marche pas
int main()
{
FMUSIC_MODULE * f; / / pour les mids
FSOUND_STREAM* g; / / pour les wav/mp3
FSOUND_STREAM* g2;
int r;
FSOUND_Init(44100, 32, 0);
FSOUND_SetOutput(FSOUND_OUTPUT_DSOUND);
FSOUND_SetDriver(0);
f = FMUSIC_LoadSong("./smb.mid");
g =
FSOUND_Stream_Open("./test.mp3",FSOUND_LOOP_NORMAL
, 0,0);
g2 = FSOUND_Stream_Open("./test.mp3",0, 0,0);
r = FSOUND_GetError ( );
FSOUND_Stream_Play(0,g);
FMUSIC_PlaySong(f);
system("PAUSE");
FSOUND_Stream_Play(1,g2);
system("PAUSE");
FSOUND_Stream_Close(g);
FSOUND_Stream_Close(g2);
FMUSIC_FreeSong(f);
return 0;
}
rikkuman4 > précise toujours ce que tu veux dire par " ça marche pas ? "
ça ne compile pas ? ça ne linke ça ? ça se lance ? ça plante ? ça ne joue pas de son ? ...
As tu essayé avec mon exemple sur mon site, chapitre K ?
j´ai justement fait le ton exemple sa marche pas !
sa compile pas :/
erreurs de compilation please ?
sa me dis que y´a une erreur à ce niveau
pourtant, j´ai tout bien fait dans l´installation des fichiers :/
ou as tu mis le fichier fmod.h ?
regarde s´il est dans ton repertoire include de dev C++, et dans un sous repertoire fmod.
Bon, sinon : je ne veux plus que tu me dises " il y a une erreur", dis moi " l´erreur est : . ... "
Sois tres clair dans ce que tu demandes, sinon je ne te répondrai pas.
N´oubliez pas qu´un code peut avoir des milliers de raison de ne pas compilé.
deplus le compilateur peut vous indiquer une erreur qui n´est pas la " vrai" erreur.
par exemple si vous oubliez un ´;´ a ligne 12, il peut tres bien vous dire que xxxx n´est pas une r-value a la ligne 13.
c´est pour cela que l´on demande des messages d´erreur precis...