Bonjour,
j'ai une erreur (que je suppose idiote) à l'utilisation d'une chaîne. Mais comme je débute, je ne comprends pas. Voilà mon code :

main.c :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
#include <stdlib.h>
#include <stdio.h>
#include "chaine.h"
 
int main()
{
	printf("%s\n",c);
	return 0;
}
chaine.h :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
#ifndef CHAINE_H
#define CHAINE_H
 
char c[2];
 
#endif
chaine.c :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
#include <stdlib.h>
#include <stdio.h>
#include "chaine.h"
 
c[0]='Y';
c[1]='\0';
Je compile en tapant
gcc main.c chaine.c
et j'obtiens
chaine.c:5:1: attention : la définition de données n'a pas de type ni de classe de stockage [enabled by default]
chaine.c:5:1: erreur: conflicting types for ‘c’
In file included from chaine.c:3:0:
chaine.h:4:6: note: previous declaration of ‘c’ was here
chaine.c:5:1: erreur: initialisation invalide
chaine.c:6:1: attention : la définition de données n'a pas de type ni de classe de stockage [enabled by default]
chaine.c:6:1: erreur: conflicting types for ‘c’
In file included from chaine.c:3:0:
chaine.h:4:6: note: previous declaration of ‘c’ was here
chaine.c:6:1: erreur: initialisation invalide
Quelqu'un peut m'aider ?
Merci.