C允许参数地址吗?

我收到以下语句的编译错误:

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

通过地址时我似乎得到错误; 错误信息如下:

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

我在Visual Studio上使用。

C允许传递指针,这是参数引用的常用机制。 但是,语法不是您使用的C ++中使用的语法。 相反它是:

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

你的语法在C中是无效的。我不确定你的目标是什么。 要么你正在考虑C ++引用(这是一个C ++的东西),要么你正在考虑指针,在这种情况下你想要* ,而不是&

不,你不能在C中使用C ++样式引用。你需要传递指针来获得类似的行为。