一个例子
#include<stdio.h>Exchg3(int &x, int &y) /*注意定义处的形式参数的格式与值传递不同*/
{
int tmp=x;
x=y;
y=tmp;
print("x=%d,y=%d\n",x,y);
}
main()
{
int a=4;
int b=6;
Exchg3(a,b);/*注意:这里调用方式与值传递一样*/
Print("a=%d,b=%d\n", a, b);
}
第二行报错不可这样写的吗?我是从网上拿过来的 真不知道是什么高人写出来的程序。 应当的指定VOID类型函数.......void exchg3(int&,int&) 加上VOID也一样 .c 的程序可以不加,但是&必须是C++
print?Print?应该是printf巴- -
其他没错了……………… 有点乱....使用了引用....在MAIN上也要加int .....printf注意全小写.... 楼主不妨巴文件名放上,就比较明显了,
另外通常VC会根据后缀进行C C++的编译器选择,但是可以强制指定= = 所有副程序/函數必須有data type(1) 只有C++類別的Constructor只需要data type
所有副程序/函數必須有回傳(return) (2)
不是print , Print而是printf (3)
//change ->修改了的行
//added->新增的行
某用g++翻譯這個便可以行了
#include<stdio.h>
void Exchg3(int &x, int &y) /*注意定义处的形式参数的格式与值传递不同*/ //changed (1)
{
int tmp=x;
x=y;
y=tmp;
printf("x=%d,y=%d\\n",x,y); //changed (3)
}
int main() //changed (1)
{
int a=4;
int b=6;
Exchg3(a,b);/*注意:这里调用方式与值传递一样*/
printf("a=%d,b=%d\\n", a, b); //changed (3)
return 0; //added(2)
} 不知是哪个强人写出来的程序
页:
[1]