C允许参数地址吗?

时间:2012-03-24 22:35:05

标签: 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上使用。

3 个答案:

答案 0 :(得分:3)

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

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

答案 1 :(得分:2)

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

答案 2 :(得分:1)

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