CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

J´aide les personne en C/C++

JeanYvesYves
JeanYvesYves
Niveau 10
20 février 2006 à 21:49:24

nightbarmare > le C++ est un langage de programmation : cest des codes que tu tapes pour parler et donner des ordres a l´ordinateur : pour faire un logiciel ou un jeu par exemple...

dynoplasmma
dynoplasmma
Niveau 9
20 février 2006 à 21:54:14

Merci JYY !
j´aurais penser que mon code aurait contenu pleins d´erreurs.

Coté connaissance C et C++, jsuis moyen.
J´ai appris les structures a l´instant, les fonction il y a moin d´une semaine.

En tout cas, tres pratique les structures alliées aux fonctions :)

Jvais modifier de ce pas mon code :-)

JeanYvesYves
JeanYvesYves
Niveau 10
20 février 2006 à 22:36:52

n´oublie pas, quand tu passes une structure (dans ce cas la en tout cas), de la passer par référence !!

void Blit(Sprite& s)
ou alors pas adresse si tu preferes :
void Blit(Sprite *s)

Mais PAS par copie :

void Blit(Sprite s)

car si tu fais ça, s devient UNE COPIE de l´oringinal : ça met du temps a etre copié, mais surtout, si tu modifies s, alors c´est uniquement la copie qui est modifiée ! :)
Donc passe bien avec :

void Blit(Sprite& s)

dynoplasmma
dynoplasmma
Niveau 9
20 février 2006 à 23:08:30

Ok :)

Mais j´ai une petite question encore :
Dans le tableau d´images, je charge tout comme ceci ?

SDL_Surface* Tab_Images[5];
Tab_Images[0]=SDL_Surface* raquette;
Tab_Images[1]=SDL_Surface* demon;
Tab_Images[2]=SDL_Surface* balle;
Tab_Images[3]=SDL_Surface* fond;
Tab_Images[4]=SDL_Surface* score;

Stophe
Stophe
Niveau 8
20 février 2006 à 23:09:07

Salut je débute en C et en voulant compiler un "menu" sous dos et j´ai un probleme de compilation avec

break; , pouvez vous me dire d´ou vient mon erreur ? (faite pas gaffe aux connerie que j´écrit c´est juste que je m´entraine)

la ligne ou est l´erreur est celle ou j´ai mit les >>>>>>>>>>>>>>>><<<<<<<<<< ( j´ai pas compiler avc sa je vous rassure :ok: !

  1. include <stdio.h>
  2. include <stdlib.h>

int main(int argc, char *argv[])
{
long choixMenu;
printf ("***Menu***\n\n");
printf ("1. Pizza\n");
prinft ("2. Doner\n");
printf ("3. Spaguetti\n");
printf ("4. Choucroute\n");
printf ("5. Epinar\n");
printf ("\n Votre choix ?" );

scanf ("%ld", &choixMenu);

switch (choixMenu)

case 1 :
printf ("Très bon choix ! Une bonne pizza italienne, et en dessert ?\ n");
break;
case 2 :
printf ("Mmmh un bon doner ! Et en dessert ?\ n");
break;
case 3 :
printf (" Des bonne spaguetti, sa va c´est bon , et en dessert ?\ n");
break;
case 4 :
printf ("De la choucroute... MMMHH ! et en dessert \n");
break;
case 5 :
printf ("Des epinard...Très bon choix, et en dessert ?\ n");
break;
default :
printf (" Nan nan ta rien choisit ! Pour la peine t´aura rien ! Nah\n"):

long choix_dessert;
printf ("***Menu dessert***\n\n")
printf ("1.Glace choco\n");
printf ("2.Gateau \n");
printf ("3.Danette\n");
printf ("\n Votre choix ?! ")
scanf ("%ld",&choix_dessert);

printf ("\n")
}
case 1 :
printf ("Très bon choix , a bientot !\ n");

>>>>>>>>>break;<<<<<<<<<<<<<<<<<<<<

case 2 :
printf (" Des bon gateau ! a bientot\n");
break;
case 3 :
printf ("hep hep hey dannnette daaaaaaanete daneete ! a bientot !\ n");
break;
default :
printf ("Pas de dessert pour toi !" )

JeanYvesYves
JeanYvesYves
Niveau 10
20 février 2006 à 23:23:02

Stophe >
met bien des {} autour de ton switch :-)

switch (choixmenu)
{ // <-- tu as oublié ça
case 1 :
...
break;

...

} // <-- tu as oublié çà

JeanYvesYves
JeanYvesYves
Niveau 10
20 février 2006 à 23:24:59

dynoplasmma >
tu peux faire directement :

Tab_Images[0]= LoadBMP("raquette.bmp");
Tab_Images[1]= LoadBMP("truc.bmp");
...
:)

Stophe
Stophe
Niveau 8
20 février 2006 à 23:26:04

Ah bin oué sa marche mieux ^^

Merci bien JeanYvesYves :ok:

dynoplasmma
dynoplasmma
Niveau 9
20 février 2006 à 23:29:27

Ah ba vi !
Encore merci JYY :-p

dynoplasmma
dynoplasmma
Niveau 9
21 février 2006 à 00:17:20

Oulla !
40 erreur !! !

donc, en gros, deux lignes sont fausses :
rcdst.x = s.x;
rcdst.y = s.y;

Et aucune image n´est declaré. :snif2:

dynoplasmma
dynoplasmma
Niveau 9
21 février 2006 à 00:26:09

Il n´y a "plus que" 36 erreurs :

Voici le code :
http://www.rafb.net/paste/results/iTkox668.html

Voici les erreurs :
Compilateur: Default compiler
Building Makefile: "C:\WINDOWS\Bureau\DEMONS\Makefile.win"
Exécution de make...
make.exe -f "C:\WINDOWS\Bureau\DEMONS\Makefile.win" all
g++.exe -c main.cpp -o main.o -I"C:/DEV-CPP/include/c++/3.3.1" -I"C:/DEV-CPP/include/c++/3.3.1/mingw32" -I"C:/DEV-CPP/include/c++/3.3.1/backward" -I"C:/DEV-CPP/lib/gcc-lib/mingw32/3.3.1/include" -I"C:/DEV-CPP/include"

main.cpp: In function `void Blit(Sprite*)´:
main.cpp:49: error: request for member `x´ in `s´, which is of non-class type `
Sprite*´
main.cpp:50: error: request for member `y´ in `s´, which is of non-class type `
Sprite*´
main.cpp:51: error: syntax error before `*´ token

main.cpp: In function `void initialisation()´:

main.cpp:60: error: `screen´ undeclared (first use this function)
main.cpp:60: error: (Each undeclared identifier is reported only once for each
function it appears in.)

main.cpp: In function `void menu1()´:
main.cpp:126: error: `ecrantitre´ undeclared (first use this function)
main.cpp:127: error: `curseur´ undeclared (first use this function)
main.cpp:138: error: `carre´ undeclared (first use this function)

main.cpp: In function `void menu2()´:
main.cpp:213: error: `manche1´ undeclared (first use this function)
main.cpp:213: error: `BlitSurface´ undeclared (first use this function)
main.cpp:216: error: `trois´ undeclared (first use this function)
main.cpp:217: error: `deux´ undeclared (first use this function)
main.cpp:218: error: `un´ undeclared (first use this function)
main.cpp:219: error: `go´ undeclared (first use this function)

main.cpp:267: error: `r3´ undeclared (first use this function)

main.cpp:299: error: `mec´ undeclared (first use this function)

main.cpp: In function `void menu3()´:
main.cpp:321: error: `manche2´ undeclared (first use this function)

main.cpp:375: error: `r4´ undeclared (first use this function)

main.cpp:417: error: `DFD´ undeclared (first use this function)
main.cpp:418: error: `DGD´ undeclared (first use this function)
main.cpp: In function `void menu4()´:
main.cpp:432: error: `fond´ undeclared (first use this function)
main.cpp:443: error: `DFB´ undeclared (first use this function)
main.cpp:444: error: `DFG´ undeclared (first use this function)
main.cpp:445: error: `DFH´ undeclared (first use this function)
main.cpp:456: error: `DGB´ undeclared (first use this function)
main.cpp:457: error: `DGG´ undeclared (first use this function)

main.cpp:458: error: `DGH´ undeclared (first use this function)

main.cpp:518: error: `r6´ undeclared (first use this function)

main.cpp:524: error: `r7´ undeclared (first use this function)

main.cpp:525: error: syntax error before `if´
main.cpp: At global scope:
main.cpp:575: error: syntax error before `}´ token
main.cpp: In function `void menu5()´:
main.cpp:584: error: `victoireDF´ undeclared (first use this function)

main.cpp: In function `void menu6()´:
main.cpp:596: error: `victoireDG´ undeclared (first use this function)
main.cpp: In function `void menu7()´:
main.cpp:608: error: `credits´ undeclared (first use this function)
main.cpp: In function `void menu8()´:
main.cpp:627: error: `explications´ undeclared (first use this function)

Exécution terminée

PS : jai aussi essayé de gerer le son, mais sans resultats, mais ca cetait avant.

dynoplasmma
dynoplasmma
Niveau 9
21 février 2006 à 00:34:57

Je suis descendu a 29 erreurs, j´ai corrigé les rectangles restées dans le programme.

Le code : http://www.rafb.net/paste/results/p8PmvJ34.html

Les erreurs : http://www.rafb.net/paste/results/ty0c1017.html

JeanYvesYves
JeanYvesYves
Niveau 10
21 février 2006 à 00:37:55

pas ça :

typedef struct Sprite Sprite;
struct Sprite
{
int im;
int x;
int y;
};

mais ça :

typedef struct
{
int im;
int x;
int y;
} Sprite;

dynoplasmma
dynoplasmma
Niveau 9
21 février 2006 à 15:27:45

Avec ce changement, j´ai autant derreurs :(

dynoplasmma
dynoplasmma
Niveau 9
21 février 2006 à 21:28:39

En fait il me dit que mes pointeurs ne sont pas declarés.
Donc je rajoute : SDL_Surface *fond ...

Et avec ca, j´atteind 239 erreurs !

PiloiCus
PiloiCus
Niveau 10
21 février 2006 à 21:41:05

salut,

bon j´ai bien suivi les tutos pour installer SDL, j´ai fait pas à pas la manip et j´ai toujours ce probleme où devcpp est incapable d ereconnaitre toutes lignes avec SDL dedans. Ca me met un paquet d´erreurs et je peux toujours pas afficher une simple image a l´écran...
Quelqu´un peut me donner une autre manip pour installer SDL ? ou peut-être m´éclairer sur l´endroit om je me trompe?

dynoplasmma
dynoplasmma
Niveau 9
21 février 2006 à 22:01:44

https://www.jeuxvideo.com/forums/1-31-8416924-1-0-1-0-0.htm

Suit a la lettre ceci, et normalement tu devrais y arriver :)

guyver2
guyver2
Niveau 10
21 février 2006 à 22:15:22

verifie suivant le type d´erreur de compilation que :
- tu ajoute bien -lSDL -lSDLmain -lSDL_image lors de la compilation
- les fichiers .h ou .a sont bien ou il faut.
- tu a les bon includes en ent-tete de tes sources.

et si rien ne marche poste nous ton code et tes erreurs.

Sinon question perso:

j´aimerais pouvoir extraire les informations des fichiers mp3 ( tags id3 ) dans un prog en C/C++. J´ai trouver une librairie qui s´apelle id3lib mais je suis pas tout a fait sur que ça me convienne et en plus j´ai pas compris comment m´en servir :(
merci

JeanYvesYves
JeanYvesYves
Niveau 10
21 février 2006 à 22:49:06

dynoplasmma > sois bien rigoureux dans tes déclarations et apprend a décoder les messages d´erreur :) Tout devrait alors etre simple.

Commence toujours par la 1ere erreur : les autres ne veulent parfois rien dire : il suffit que la premiere erreur fasse "perdre le fil" au compilo, et il t´en genere 200 en + ...
Corrige la premiere, et ça peut faire une réaction enchaine :)

dynoplasmma
dynoplasmma
Niveau 9
21 février 2006 à 23:05:57

je constate que TOUS les SDL_Surface* plantent.
L´erreur vient a priori du SDL_Surface *screen;

main.cpp:28: error: redefinition of `SDL_Surface*screen´
main.cpp:22: error: `SDL_Surface*screen´ previously declared here

Mais apres, pour remedier a cette erreur, je e vois pas du tout !

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Internet
  • Macintosh
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware