Bonjour,

Voila, je suis confronté a un phénomène que je n'arrive pas à expliquer.
lors de l'appel d'un fonction dont le nom comporte un tiret il m'est impossible de compiler.

Exemple :
header : text.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
#include <stdio.h>
 
void text-t( char * s );
fonction : text.c
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
#include "text.h"
 
void text-t( char * s ){
        printf ("%s\n",s);
}
enfin le main.c
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
#include "text.h"
 
int main(){
        text-t("test\n");
        return 0;
}
en lançant ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
gcc main.c text.c text.h -o dash
 
In file included from main.c:1:
text.h:3: error: parse error before '-' token
main.c: In function `main':
main.c:4: error: `text' undeclared (first use in this function)
main.c:4: error: (Each undeclared identifier is reported only once
main.c:4: error: for each function it appears in.)
In file included from text.c:1:
text.h:3: error: parse error before '-' token
text.c:3: error: parse error before '-' token
text.h:3: error: parse error before '-' token
gcc m'insulte ! alors que la même version en remplaçant "text-t" par "text" par exemple compile et fonctionne.
Si vous avez une explication je suis preneur.