Bonjour à tous,je vais essayer d'être le plus clair possible
je suis en train de créer un programme de SGBD en langage C.J'ai donc crée une structure avec un paramètre indice qui me permet de savoir si une marque est disponible ou non.
Je travaille donc avec des fonctions,et là viens mon problème.
je demande à l'utilisateur qu'elle marque il veut supprimer, puis je souhaite comparer dans la basse de données ( un fichier texte ).
Si elle y est je place un * pour indiquer qu'elle n'est plus disponible.
Mon appel de fonction dans mon main est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
suppression_piece (&nb_piece,tab);
avec nb_piece=0
et ma fonction est la suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
void suppression_piece (int* adr_nb_casse, casse tab[])
{
    int i;
    char marque[N];
    FILE * f;
    f=fopen("D:\Documents and Settings\denicod\Desktop\SGBDpiece.txt","r");
    i=0;
    printf("Saisir le marque de la voiture a suprimer \n");
    scanf("%s",marque); 
 
    for(i=0;i < *adr_nb_casse;i++)
    {    if ((marque ==tab[i].marque)&& (tab[i].indice == ' ')) 
            {
                tab[i].indice='*';
             }  
 
          else
            {
                printf("Marque non présente dans la BD \n");
             }
    return;
}
Problème: le if n'est pas exécuter et je ne comprend pas pourquoi.
Merci d'avance pour votre aide