几个C++的结构体成员引用问题

1.可以将结构体变量的值赋给另一个具有相同结构的结构体变量;2.可以引用结构体变量成员的地址,也可以引用结构体变量的地址。对1,怎样算是结构体的结构相同?是成员数据类型相... 1.可以将结构体变量的值赋给另一个具有相同结构的结构体变量;
2.可以引用结构体变量成员的地址,也可以引用结构体变量的地址。
对1,怎样算是结构体的结构相同?是成员数据类型相同,个数也要相同?成员变量名也相同?。。。。。。能否举个例子?
对2,是说利用指针么?。。能否举个例子?

希望各位大虾帮忙解释下,好的会加分的!!
展开
 我来答
有钱买不起房子
推荐于2016-03-22 · TA获得超过4326个赞
知道大有可为答主
回答量:1249
采纳率:100%
帮助的人:2091万
展开全部
#include<stdio.h>

int main()
{
struct node
{
int data;
int n;
}s1,s2,*p;

/*
struct node1
{
int data;
int n;
}s2;
*/
s1.data=1;
s1.n=10;
//1.可以将结构体变量的值赋给另一个具有相同结构的结构体变量;
s2=s1;//s1和s2结构完全相同,可以整体赋值.
printf("s2.data=%d\n",s2.data);
//2.可以引用结构体变量成员的地址,也可以引用结构体变量的地址
p=&s2;//让p指向s2地址
p->data=33;//修改s2中data数值为33
printf("s2.data=%d\n",s2.data);

int *q;
q=&s2.data;//让q指向s2.data地址,而不是指向s2

*q=56;//修改s2中data数值为56
printf("s2.data=%d\n",s2.data);
return 0;

}
mshandle
2011-01-28 · 超过14用户采纳过TA的回答
知道答主
回答量:45
采纳率:0%
帮助的人:42.4万
展开全部
结构体其实就是,不同类不能拷贝。
如果继承关系或者从一个类继承。static_cast<>倒是可以转换拷贝。
如果不是,但是内容差不多,你要自己重载=就可以了。
第二个问题,不太理解你要问题,难道就是 MyClass& m_MyClass=mVa;?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
serenesunny
2011-01-28 · TA获得超过5699个赞
知道小有建树答主
回答量:774
采纳率:0%
帮助的人:596万
展开全部
#include <iostream>
#include <string.h>
using namespace std;

struct student
{
char name[10];
int age;
};

void main()
{
student stu1 = {"王飞", 22};
// 结构体变量之间相互赋值
student stu2;
stu2 = stu1;
cout << "姓名: " << stu2.name << endl;
cout << "年龄: " << stu2.age << endl;
// 定义一个student型指针
student *pstu;
// 给pstu分配空间
pstu = new student();
// 利用指针访问结构体成员
strcpy(pstu->name, "小明");
pstu->age = 20;
cout << "姓名: " << pstu->name << endl;
cout << "年龄: "<< pstu->age << endl;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
veamrx
2011-01-29 · TA获得超过2124个赞
知道小有建树答主
回答量:2.2万
采纳率:0%
帮助的人:4554万
展开全部
struct 结构体类型名

数据成员说明列表
};
其中,struct为定义结构体类型的关键字,结构体类型名是用户定义的任何一个有效的标识符,它的作用就如同任何一个基本类型名,利用它能够定义具有该结构类型的变量或函数。数据成员说明列表是对其名成员的数据类型的说明,即:类型名 成员名。整个结构体类型定义必须用“;”作为结束符。例如,一个学生的学籍信息包含有学号、姓名和入学分数,可将其定义为一个结构体类型;
struct student
{
char id〔7〕;
char name〔10〕;
float score;
};
这样就定义了一个结构体类型student,它向编译系统声明:这是个结构体类型,它包括三个成员,一个是长度为7的字符类型id,用以表示学号;一个是长度为10的字符数组name,用以表示学生姓名;一个是单精度实型变量score,用以表示学生分数。
在C语言中,结构体成员只能是数据;C++为了适应面向对象的程序设计,对此加以扩充,其结构体成员既可以是数据成员,也可是函数成员。但由于C++提供了类(class)类型,一般情况下,不必使用带函数成员的结构体。
下面我们来说下结构体变量的引用和初始化
引用一个结构体变量有两种方式,通过结构体变量名或指向结构体变量的指针引用变量成员。
与之对应的标记形式也有两种,分别用运算符“.”和“->”表达。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式