Syntax error at end of input [Résolu]

Signaler
Messages postés
23
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
22 février 2006
-
Messages postés
23
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
22 février 2006
-
Bonsoir à la communauté cppfrance

j'ai un probleme sur mon code que je n'arrive pas du tout a résoudre et ca fait deja un certain temps que je suis dessus.

pour info je developpe en C et avec le logiciel dev cpp v. 4.9.9.2

___________________________________________________________________________________________________

#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include "ajouter.h"

int ajout_voiture(voiture tab[], int *nb)
{


int verif=0,verifan=0,verifan2=0;
int categorie;
int nbportes;
bool test=1;


system("cls");
puts(" +===============================================================+");
puts(" | |");
puts(" | M E N U A J O U T E R |");
puts(" | |");
//attribue au vehicule un numero
printf(" | Ceci est le vehicule numero %d,*nb |");
puts(" +===============================================================+");
tab[*nb].rang=*nb;

do
{
printf(" | Constructeur: | ");
fflush(stdin);
gets(tab[*nb].constructeur);

do
{
printf(" | Modele: | ");
fflush(stdin);
gets(tab[*nb].modele);

// Selection de la categorie du vehicule
do
{
test=1;
system("cls");
puts(" +===============================================================+");
puts(" | |");
puts(" | C A T E G O R I E D U V E H I C U L E |");
puts(" | |");
puts(" +===============================================================+");
puts(" | |");
puts(" | 1 - Compacte |");
puts(" | |");
puts(" | 2 - Coupe - Cabriolet |");
puts(" | |");
puts(" | 3 - Break |");
puts(" | |");
puts(" | 4 - Monospace |");
puts(" | |");
puts(" | 5 - Berline |");
puts(" | |");
puts(" | 6 - Utilitaire |");
puts(" | |");
puts(" | 7 - Vehicule Societe |");
puts(" | |");
puts(" +===============================================================+");
printf(" Categorie du vehicule : ");
fflush(stdin);
// Le getch permet de ne pas avoir a appuyer sur la touche entree
categorie = getch();
switch(categorie)
{
case '1':
strcpy(tab[*nb].categorie, "Compacte");
break;
case '2':
strcpy(tab[*nb].categorie, "Coupe - Cabriolet");
break;
case '3':
strcpy(tab[*nb].categorie, "Break");
break;
case '4':
strcpy(tab[*nb].categorie, "Monospace");
break;
case '5':
strcpy(tab[*nb].categorie, "Berline");
break;
case '6':
strcpy(tab[*nb].categorie, "Utilitaire");
break;
case '7':
strcpy(tab[*nb].categorie, "Vehicule Societe");
break;
default :
printf("Choix Incorrect !!\n\n");
test=0;
system("pause");
break;
}
}
while(test==0);
// Selection dans un menu du nombre de portes du vehicule
do
{
test=1;
system("cls");
puts(" +===============================================================+");
puts(" | |");
puts(" | N O M B R E D E P O R T E S |");
puts(" | |");
puts(" +===============================================================+");
puts(" | |");
puts(" | 1 - 3 portes |");
puts(" | |");
puts(" | 2 - 5 portes |");
puts(" | |");
puts(" +===============================================================+");
printf(" Nombre de portes >> ");
fflush(stdin);
nbportes = getch();
switch(nbportes)
{
case '1':
strcpy(tab[*nb].nbportes, "3 Portes");
break;
case '2':
strcpy(tab[*nb].nbportes, "5 Portes");
break;
default :
printf("Choix non-valide !!\n\n");
test=0;
system("pause");
break;
}
}
while(test==0);
//nationalite du constructeur
printf(" | Nationalite: | ");
fflush(stdin);
gets(tab[*nb].nationalite);

//validité de la date de sortie du vehicule
do
{
printf(" | Annee: | ");
fflush(stdin);
scanf("%d",&tab[*nb].annee);
verifan=tab[*nb].annee;
verifan2=tab[*nb].annee;
if (verifan2>2050) printf(" Date non valide !\n");
if (verifan<1900) printf(" Date non valide !\n");
}while (verifan<1900 || verifan2>2050);

system("cls");
puts(" +===============================================================+");
puts(" | |");
puts(" | M E N U A J O U T E R |");
puts(" | |");
puts(" +===============================================================+");
puts(" ");
printf(" | Numero vehicule : %4d%\n", tab[*nb].rang);
printf(" | Constructeur : %s\n", tab[*nb].constructeur);
printf(" | Modele : %s\n", tab[*nb].modele);
printf(" | Nombre de Portes : %s\n", tab[*nb].nbportes);
printf(" | Categorie : %s\n", tab[*nb].categorie);
printf(" | Nationalite : %s\n", tab[*nb].nationalite);
printf(" | Annee : %d\n", tab[*nb].annee);
puts(" +_______________________________________________________________+");


system("pause");
(*nb++);

}

et il me met ca comme erreur:

projet Garage svg\ajouter.c In function `ajout_voiture':
projet Garage svg\ajouter.c syntax error at end of input
projet Garage svg\Makefile.win [Build Error] [ajouter.o] Error 1

et il me surligne le dernier } que j'ai mis en Rouge et en gras

Cordialement si vous pouvez m'aider car la je voie vraiment pas

Ps: si vous avez besoins d'autres codes ya pas de probleme

3 réponses

Messages postés
2865
Date d'inscription
samedi 2 novembre 2002
Statut
Membre
Dernière intervention
11 mai 2009
10
il te manquerai pas des accolades fermantes ?
Bob...
"La chance accorde ses faveur aux esprits avertis..."
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
12
Si cela est ton code original et qu'il n'y a rien d'autre après le } en rouge, LordBob a raison. Il te manque des accolades fermantes.
Messages postés
23
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
22 février 2006

j'ai je crois corrigé tout les problemes d'accolades
(j'en remercie d'ailleurs [../auteurdetail.aspx?ID= 617077 SAKingdom et ][../auteurdetail.aspx?ID=617077 ][../auteurdetail.aspx?ID =17350 LordBob)]

seulement il compile pas et il me met d'autres messages d'erreurs

multiple definition of `ajout_voiture'
first defined here
[Linker error] undefined reference to `modif'
ld returned 1 exit status
Projet C\projet Garage svg\Makefile.win [Build Error] [Projet1.exe] Error 1

et la je vois pas :(

si jamais vous ne voyez pas comme ca je peux vous envoyer les fichiers :)

Cordialement Cédric