#include <iostream>
using namespace std;
int main(void)
{
int x = 3;
//定义引用,y是x的引用
int &y=x;
//打印x和y的值
cout<<x<<endl;
cout<<y<<endl;
//修改y的值
y = 10;
//再次打印x和y的值
cout<<x<<" "<<y<<endl;
return 0;
}
using namespace std;
int main(void)
{
int x = 3;
//定义引用,y是x的引用
int &y=x;
//打印x和y的值
cout<<x<<endl;
cout<<y<<endl;
//修改y的值
y = 10;
//再次打印x和y的值
cout<<x<<" "<<y<<endl;
return 0;
}
已采纳回答 / JesseZhang00330
第一道练习中的写法是 const int* const p = &a; 注意第二个const的位置在 * 之后,修饰的是指针p本身,意思是一个指向常量的常量指针。而写成const int const *p=&a 是错误的,因为 * 之前的都是修饰指针指向的对象,相当于 const const int *p,这样就重复了。而在这一道练习题中,p指向的对象是常量,所以 * 之前要加const,但是指针 p 本身可以是常量,也可以是变量,所以 * 之后可以不用加const。
2016-04-14
最新回答 / 诗情美如画
第一个 可能因为 const int * 不能转成 int *,常量似乎是无法再次赋值的, 你把指针变量加上const就好了第二个 const的仅作用于*p的值 而不影响p的地址
2016-04-11
为什么定义用的int getMax(int count,int arr[])
后面输出用的cout<<getMax(3,numArr[3])<<endl;
就提示错误呢?
后面输出用的cout<<getMax(3,numArr[3])<<endl;
就提示错误呢?