我在我的Linux机箱上测试了这个,它有gcc,编译得很好.
void myFunc(int* &input);
Run Code Online (Sandbox Code Playgroud)
编译没有错误.
在我的avr上,声明相同的功能:
void myFunc(int* &input);
Run Code Online (Sandbox Code Playgroud)
导致编译错误:
expected ';', ',' or ')' before '&' token
Run Code Online (Sandbox Code Playgroud)
linux上的gcc版本是4.6.3
avr(avr-gcc)的gcc版本是3.4.2
在C中(不确定C++)
void myFunc(int* &input);
Run Code Online (Sandbox Code Playgroud)
不是有效的声明.在C中,所有调用都是按值进行的.与C++不同,没有引用的调用.