Est-ce que C permet paramètre par adresse?

Je reçois une erreur de compilation pour l’instruction suivante:

void read_text(int & c1, int & c2, ssortingng file1, ssortingng file2 ) 

Je semble avoir une erreur en passant l’adresse; le message d’erreur est ci-dessous:

 Error 13 error C2143: syntax error : missing ')' before '&' \\vmware-host\shared folders\school\misc\johncpp\porj\similarity.c 101 

J’utilise sur Visual Studio.

C permet de passer un pointeur, ce qui est le mécanisme habituel pour les références de parameters. Toutefois, la syntaxe n’est pas celle utilisée dans C ++, que vous avez utilisée. Au lieu de cela, c’est:

 void read_text(int * c1, int * c2, ssortingng file1, ssortingng file2) 

Votre syntaxe n’est pas valide en C. Je ne suis pas sûr de votre objective. Soit vous pensez à des références C ++ (qui sont du C ++), soit à des pointeurs, auquel cas vous voulez * , pas & .

Non, vous ne pouvez pas utiliser de références de style C ++ en C. Vous devrez passer des pointeurs pour obtenir un comportement similaire.