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

Probleme programmation avec code:blocks

Mitgard95
Mitgard95
Niveau 9
29 juillet 2009 à 14:49:48

Depuis hier apres midi j'ai voulu me lancer dans la programmation avec le tuto du site du zero. La 1ere etape ou l'on nous demande de comimpiler et executer le projet main.c qui sert d'exemple ca ne marche pas. Je cliques et rien ne se passe, aucun message et il est ecrit dans le carre blanc 'n nothinc has done'' ou qq chose dans ce genre la ( je suis sur mon itouch)

final-hearts
final-hearts
Niveau 10
29 juillet 2009 à 15:39:52

ça veut dire que ton code à déjà été compilé, il reste plus qu'à utiliser la commande run(ou build and run).
Une fois des modifs de faites si t'arrives pas à compiler, et que t'as ce message, tu dois faire rebuild.

Mitgard95
Mitgard95
Niveau 9
29 juillet 2009 à 17:37:10

Merci bc , je vais essayer

Mitgard95
Mitgard95
Niveau 9
29 juillet 2009 à 18:16:44

Il se passe juste rien du tout Lol. Je te screen ce qui arrive quand je cliques sur build and run puis un dès que j'appuie sur run tout simplement:

Build and run:
http://img33.imageshack.us/i/problme.jpg/

run:
http://img29.imageshack.us/i/problme2.jpg/

sangohan55
sangohan55
Niveau 10
29 juillet 2009 à 19:42:48

Problème traité un bon million de fois, tu aurais pu faire une recherche sur le forum C du siteduzero.

Donc tu vas dans Settings -> Compiler and debugger -> toolchain executables et tu cliques sur auto-detect.

Bien sur inutile de te dire que si tu as téléchargé la version de codeblocks sans compilateur ça ne risque pas de fonctionner.

Mitgard95
Mitgard95
Niveau 9
29 juillet 2009 à 21:35:42

Je ne savais absolument pas qu'il y avait un forum pour poser ses questions sur le site du zero et j'avoue ne pas avoir chercher. J'ai telecharger le logiciel à l'aeresse donnee donc je devrait avoir un compilateur. Sinon merci beaucoup de ta réponse ;)

Mitgard95
Mitgard95
Niveau 9
01 août 2009 à 17:37:21

J'ai à nouveau un problème et non résolu.
Quand je fais ca:

include <stdio.h>

  1. include <stdlib.h>

int main()
{
int age = 0;
printf("Veuillez entrer votre age: ");
scanf("%d", &age);
if(age>=18);
{
printf("Vous avez l'age requis pour rentrer sur le site: Bienvenu et bonne visite !\n");
}
else
{
printf("Je suis désoler mais vous n'avez pas l'age requis pour visiter ce site web !");
}
return 0;
}

Ca me dit "error: syntaxe error before "else" alors que c'est exactement comme ca dans l'exemple :-(

Lionhearths
Lionhearths
Niveau 4
01 août 2009 à 17:43:23

Enlève le ; à la fin de "if(age>=18);".
C'est le genre d'erreurs bien caché qu'on vois pas forcément du premier coup d'œil, et qui peut vite devenir casse-pied à trouver quand on a pas l'habitude.

Mitgard95
Mitgard95
Niveau 9
01 août 2009 à 17:51:51

AA d'accord, merci beaucoup ;)

Mitgard95
Mitgard95
Niveau 9
01 août 2009 à 17:52:37

En effet ça remarche ;)

Mitgard95
Mitgard95
Niveau 9
03 août 2009 à 15:13:14

Encore une question :hap: :
J'ai fait ma calculatrice qui regroupe multiplication, division etc . J'ai 2 erreurs et 20 warnings mais je ne les comprends pas, ( c'est tous les même).
Erreurs :
Syntaxe error before string constant
Les warnings :
warning: int format, long int arg (arg 2 , 3 ou 4(ca change des fois))

Quelqu'un peut sait ce que ca veut dire ? Merci

Paulop
Paulop
Niveau 12
03 août 2009 à 15:32:31

Sans ton code là ça va être un peu difficile. (même si les erreurs sont très parlantes, on peut avoir affaire à des effets de bord)

Mitgard95
Mitgard95
Niveau 9
03 août 2009 à 16:12:33

A oups désoler ^^ déjà je suis même pas sur que ce soit juste :p)

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

int main()
{
int choixducalcul = 0;
printf("1.Addition");
printf("2.soustraction");
printf("3.multiplication");
printf("4.division");
scanf("%d", &choixducalcul);

switch (choixducalcul)
{
long nombre1 = 0, nombre2 = 0, resultat = 0;
case 1:
printf("veuillez mettre le 1er nombre pour l'addition: ");
scanf("%d", &nombre1);
printf"veuillez mettre le 2e nombre pour l'addition: ");
scanf("%d", &nombre2);
resultat = nombre1 + nombre2;
printf("%d + %d = %d", nombre1, nombre2, resultat);
break;
case 2:
printf("Veuillez mettre le 1er nombre pour la soustraction: ");
scanf("%d", &nombre1);
printf("veuillez mettre le 2e nombre pour la soustraction: ");
scanf"%d", nombre2);
resultat = nombre1 - nombre2;
printf("%d - %d = %d", nombre1, nombre2, resultat);
break;
case 3:
printf("veuillez mettre le 1er nombre pour la multiplication: ");
scanf("%d", &nombre1);
printf("veuillez mettre le 2e nombre pour la multiplication: ");
scanf("%d", &nombre2);
resultat = nombre1 * nombre2;
printf("%d * %d = %d", nombre1, nombre2, resultat);
break;
case 4:
printf("veuillez mettre le 1er nombre pour la division: ");
scanf("%d", &nombre1);
printf("Veuillez mettre le 2e nombre pour la divison: ");
scanf("%d", &nombre2);
resultat = nombre1 / nombre2;
printf("%d / %d = %d", nombre1, nombre2, resultat);
}
return 0;
}

Paulop
Paulop
Niveau 12
03 août 2009 à 17:44:07

Ok, c'est tout simple.

Pour l'erreur, tu as juste oublié des parenthèses entre certain printf/scanf et la chaine de caractère. (comme l'erreur l'indique, tu dois normalement avoir la ligne avec)

Pour les warning, c'est simplement que tu dis explicitement dans ton code que tu vas afficher (ou inscrire) des entiers, alors que ce sont des long ("entiers long").

Deux solution, soit tu convertir tes long en int, soit tu gère des long int dans tes scanf et printf en utilisant "%ld" (c'est un L minuscule) au lieu de "%d".

Enfin, en C, on déclare les variables en début de bloc, donc
long nombre1 = 0, nombre2 = 0, resultat = 0;
doit se trouver sous
int choixducalcul = 0;

Sinon, tu ne respectes pas le standard (donc ton code ne compileras pas forcement sur tous les compilateurs.) et en plus, ton instruction, là ou elle est placée peut être inaccessible pour certaines portions qui en ont absolument besoin.

Mitgard95
Mitgard95
Niveau 9
03 août 2009 à 18:11:08

Merci beaucoup :) En effet j'avais pas vu que j'avais oublier des parenthèses.
Sinon j'ai rien pigé sur ce que tu as dit comme quoi ça ne compilera pas. En plus c'est vrai :rire2:

Paulop
Paulop
Niveau 12
03 août 2009 à 19:58:41

He bien il n'existe pas qu'un seul compilateur, Code::Blocks (qui est un environnement de développement) intègre un compilateur (MinGW il me semble), mais il existe le compilateur de microsoft, celui de IBM, celui de intel...

Pour qu'un code source soit compilable avec tout ces compilateurs, il doit respecter les normes.

La norme dit, une variable doit être déclarée en début de bloc. (il y a eu des changements mais tenons en nous à cette première règle)

Déclarer une variable c'est quand tu fais :

int variable;

J'espère que tu auras compris ^^

lord-noir
lord-noir
Niveau 1
01 mars 2011 à 17:32:13

Bonjour je suis moi aussi débutant en programmation et j'ai eu l'idée de faire d'abort un mot de passe mais la je bloque :

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

int main()
{
int nombreEntre = 0;
{
if (nombreEntre == 47)
{
printf("Tapez le code ");
scanf("%d", &nombreEntre);
printf("\n\n");
printf("Bienvenu");
}
}

else
{
return 0;
}
}
Je vais mettre des programmes sous bienvenu mais en testant le programme ,ca met "error: syntaxe error before "else"
Je programme sur code blocks
Pourriez vous m'aider a résoudre ce problème

H4ris
H4ris
Niveau 5
01 mars 2011 à 17:53:49

Lord-noir > Je programme en C++ donc je suis pas sûr de ce que je vais dire.

Tout d'abord, pourquoi met tu des accolades après avoir initialiser la variable nombreEntre ? Je penses que sa bloque de ce côté là donc il faut les retirer. Ensuite tu fait une vérification avant même de demander la valeur à l'utilisateur donc et comme tu as précédemment initialiser la valeur nombreEntre à 0, le programme se terminera toujours sans rien te demander.

Je te propose sa :

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

int main()
{
int nombreEntre = 0;

printf("Tapez le code ");
scanf("%d", &nombreEntre);

if(nombreEntre == 47)
{
printf("\n\n");
printf("Bienvenue");
}
else
{
return 0;
}
}

Si je ne me trompe pas sa devrait fonctionner

_[kami]_
_[kami]_
Niveau 4
01 mars 2011 à 22:46:25

Moi aussi je programme en C++.
Tu vas morfler avec les tableaux char alors qu'on a les string
:noel:
Sinon je crois pas qu'on doit mettre le return 0 dans le else.
De plus je propose (pour la fin) :

else
{
printf("\n\n Code Incorrecte");
}
return o;
}

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