1. *p 的答案多少?答:10 //*p=a=10
2. *&a的答案多少?答:10 //&a是变量a的地址,*&a指向变量a,所以是10
3.*(r[1]+1)的答案多少?答:4 //1行1列元素r[1][1]的值
4.*(&r[0][1])的答案多少?答:2 //&r[0][1]表示0行1列的地址,*(&r[0][1])指向0行1列元素的值
5.**r的答案多少?答:1 //0行0列元素r[0][0]值
6*(*(r+1)+2)的答案多少?答:4 //表示1行2列元素r[1][2]的值
void input(abc *ptemp) {
for(i=1;i<=1;i++) {
cin>>ptemp->a;cin>>ptemp->b; //ptemp为指针,所以用->来表示指向的对象
}
}
void prn(abc &temp) {
for(i=1;i<=1;i++) {
cout<<"\n"<
}
====================================================
重新帮你改了一下,上面那段程序可以运行了。
#include
#include
using namespace std;
struct abc {
int a;char b[10];
};
void input(abc *ptemp);
void prn(const abc &temp);
void main()
{
abc x[2] ={{1,"李明"},{2,"王亮"}};
input(x);
prn(x[0]);
}
void input(abc *ptemp){
for(int i=1;i<=1;i++){
cin>>ptemp->a;cin>>ptemp->b;
}
}
void prn(const abc &temp)
{
for(int i=1;i<=1;i++)
{
cout<<"\n"<
}
第一个
main()
{
int a=10;
int *p=a;
int &b =a;
int r[3][2]={{1,2},{3,4},{5,6}};
int (*p)[2];
p=r;
printf("%d %d %d %d %d %d %d",*p,*&a,*(r[1]+1),*(&r[0][1]),**r,*(*(r+1)+2))
}