第1个回答 2013-12-04
C语言系列都是 Case Sensitive (区分大小写)的,不知道你到底是问int还是INT
一,如果你问的是int
int是声明整形变量的KeyWord
int &是别名,一般用在函数的 list of parameter 中,表示对int型变量的引用, 如
returntype method(int &a,int &b);
还有下面的情况
int a = 15;
int &b=a; 既a与b指向同一个变量,指向同一个内存地址, 对a 和b进行任何操作的结果都相同
二,如果你问的是INT
INT 估计是个Macro ( #define INT int) 其实就是int
INT & 同上本回答被网友采纳
第2个回答 2013-12-04
返回int 其实返回的是一个不可修改临时的副本
返回int& 返回的是函数里面那个实际的变量 如果你的返回进行修改(当然你不能对返回赋值给其他变量过 除非是引用) 那会反应到函数里面
#include <iostream>
using namespace std;
int &fun1(int &b)
{
return b;
}
int fun2(int &b)
{
return b;
}
int main(void)
{
int a = 10;
int b = 10;
cout << "a = " << a << endl;
fun1(a) = 20;
cout << "a = " << a << endl; // 反应出修改
cout << "b = " << b << endl;
// fun2(b) = 20; 不能这样做
cout << "b = " << b << endl;
getchar();
return 0;
}
第3个回答 2011-11-11
int max(int a, int b) //返回的是值
{
return (a > b) ? a : b;
}
int &max(int &a, int &b) //返回的是实参的引用,就是实参本身
{
return (a > b) ? a : b;
}