我收到以下语句的编译错误:
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上使用。
答案 0 :(得分:3)
C允许传递指针,这是参数引用的常用机制。但是,语法不是您使用的C ++中使用的语法。相反它是:
void read_text(int * c1, int * c2, string file1, string file2)
答案 1 :(得分:2)
您的语法在C中无效。我不确定您的目标是什么。您要么考虑C ++引用(这是C ++的事情),要么您正在考虑指针,在这种情况下,您需要*
,而不是&
。
答案 2 :(得分:1)
不,你不能在C中使用C ++样式引用。你需要传递指针以获得类似的行为。