精华内容
下载资源
问答
  • 结构体中变量的引用
    千次阅读
    2019-05-28 08:10:56

    定义了结构体变量之后就可以在程序中对他进行引用,但是结构体变量的引用同一般变量引用不太一样,因为结构体变量中有多个不同类型变量,所以结构体变量不能整体引用,只能一个一个成员的引用。

    1 只能分别单独引用他内部的成员。

    结构体变量名.成员名
    student1.num = 172041;
    

    2 如果结构体类型中的成员也是一个结构体类型,则要使用若干个".",一级一级的找下去。因为只能对最低级的成员进行操作。其实结构体就是对数据的一种封装,当结构体成员也是结构体时,完全可以将结构体成员释放出来。

    struct AGE
    {
    	int year;
    	int month;
    	int day;
    }
    
    struct STUDENT
    {
    	char name[20];
    	int num;
    	struct AGE birthday;
    	float score;
    }
    

    上面完全可以写成:

    struct STUDENT
    {
    	char name[20];
    	int num;
    	int year;
    	int month;
    	int day;
    	float score;
    }
    

    3 可以引用‘结构体变量成员‘的地址,也可以引用“结构体变量”的地址。如“&student1.num” 和 “&student1”,前者标志student1.num这个成员在内存中的首地址,后者表示结构体变量student1在内存中的首地址。在C语言中,结构体变量的首地址就是结构体第一个成员的首地址。所以&student1就等价于第一个成员name的首地址,而name是一个数组,数组名表示的就是数组的首地址。但是要注意的是,他们等价于☞的是仅仅“他们表示的是同一个内存空间的地址”,但他们的类型是不同的,&studen

    更多相关内容
  • C++三种形式引用结构体成员变量

    千次阅读 2020-07-04 20:10:06
    结构体变量名.成员名 指针变量名->成员名 (*指针变量名).成员名(注意:*不能省略因.的结合性大于*) #include <iostream> using namespace std; struct student1 { int Code; char Name[20]; ...

    三种形式分别为:

    结构体变量名.成员名

    指针变量名->成员名

    (*指针变量名).成员名(注意:*不能省略因.的结合性大于*)

     

    #include <iostream>
    
    using namespace std;
    
    struct student1
    {
        int Code;
        char Name[20];
        char Sex;
        int Age;
    };  //只定义了其的名字但未对其进行初始化
    
    
    struct student1 Stu[2]={{1,"zhangsan",'M',21},{2,"lisi",'M',22}};
    int main()
    {
        struct student1 *pstu;
    
        cout<<"The Second Form Refer To Structure Variables: "<<endl;
        for(pstu=Stu;pstu<Stu+2;pstu++)
            cout<<pstu->Code<<"\t"<<pstu->Name<<"\t"<<pstu->Sex<<"\t"<<pstu->Age<<endl;
        cout<<"The First Form Refer To Structure Variables:"<<endl;
        for(int i=0;i<2;i++)
            cout<<Stu[i].Code<<"\t"<<Stu[i].Name<<'\t'<<Stu[i].Sex<<'\t'<<Stu[i].Age<<endl;
        cout<<"The Third Form Refer To Sturucture Variables:"<<endl;
        for(pstu=Stu;pstu<Stu+2;pstu++)
            cout<<(*pstu).Code<<"\t"<<(*pstu).Name<<"\t"<<(*pstu).Sex<<"\t"<<(*pstu).Age<<endl;
        return 0;
    }
    

     

    展开全文
  • (三)结构体变量引用 1.引用结构体变量成员 若定义了一个结构体变量和一个指向结构体变量的指针,则有以下三种引用形式: (1)结构体变量.成员名 //利用成员运算符"."访问 //演示1 (2)(*结构体指针).成员名 //利用...

    (三)结构体变量的引用
    1.引用结构体变量成员
    若定义了一个结构体变量和一个指向结构体变量的指针,则有以下三种引用形式:
    (1)结构体变量.成员名            //利用成员运算符"."访问        //演示1
    (2)(*结构体指针).成员名        //利用指针运算符"*"和成员运算符"."访问        //演示2
    (3)结构体指针->成员名         //利用指针和指向运算符"->"访问        //演示2

    2.引用整个结构体变量
    相同类型的结构体变量之间可以进行整体赋值        //演示3

    //结构体变量成员的引用演示1:结构体变量.成员名

    #include<stdio.h>
    int main()
    {
    	struct job_exam
    	{
    		unsigned num;
    		char name[10];
    		int exama;
    		int examb;
    		int total;
    	}a = { 1501,"王虎",89,92 };
    	a.total = a.exama + a.examb;	//结构体变量.成员名
    	printf("编号   姓名   笔试   面试   总成绩\n");
    	printf("%4u %6s %5d %6d %7d", a.num, a.name, a.exama, a.examb, a.total);
    
    	return 0;
    }

    //结构体变量成员的引用演示2:(*结构体指针).成员名            结构体指针->成员名

    #include<stdio.h>
    int main()
    {
    	struct job_exam
    	{
    		unsigned num;
    		char name[10];
    		int exama;
    		int examb;
    		int total;
    	}*p, s[3] = { {1501,"王虎",89,92},
    		{1502,"李雪",87,96},
    		{1503,"张扬",82,85} };
    	p = s;		//结构体指针p指向结构体数组首地址
    	printf("编号   姓名   笔试   面试   总成绩\n");
    	//(*结构体指针).成员名
    	for (int i = 0; i < 3; i++)
    	{
    		(*p).total = (*p).exama + (*p).examb;
    		printf("%4u %6s %5d %6d %7d\n", (*p).num, (*p).name, (*p).exama, (*p).examb, (*p).total);
    		p++;
    	}
    	printf("\n");
    	p = s;		//上一个for 循环使指针p的值发生了变化,此处再次重置为s(输出乱码我才想到。。)
    	//结构体指针->成员名
    	for (int i = 0; i < 3; i++)
    	{
    		p->total = p->exama + p->examb;
    		printf("%4u %6s %5d %6d %7d\n", p->num, p->name, p->exama, p->examb, p->total);
    		p++;
    	}
    
    	return 0;
    }

     //演示3:引用结构体变量整体

    #include<stdio.h>
    int main()
    {
    	struct Student
    	{
    		char *name;
    		int age;
    	};
    	struct Student stu_1 = { "李华",22 };
    	struct Student stu_2 = stu_1;	//直接将结构体变量stu_1整体赋值给stu_2
    	printf("%s的年龄是%d", stu_2.name, stu_2.age);
    
    
    	return 0;
    }

    //随堂练习9-1
    为例9-2中演示2的结构体变量a、b输入各成员值,交换a和b的数据后输出。

     例9-2演示2的源程序

    #include<stdio.h>
    int main()
    {
    	struct job_exam
    	{
    		unsigned num;
    		char name[10];
    		int exama;
    		int examb;
    		int total;
    	}a, b, s[3], * p;	//定义的结构体变量要写在";"前
    
    
    	return 0;
    }

    //根据题目要求修改后的源程序

    #include<stdio.h>
    int main()
    {
    	struct job_exam
    	{
    		unsigned num;
    		char name[10];
    		int exama;
    		int examb;
    		int total;
    	}a = { 1501,"王虎",89,92,181 }, b = { 1502,"李雪",87,96,183 }, r;
    	r = a;
    	a = b;
    	b = r;
    	printf("编号   姓名   笔试   面试   总成绩\n");
    	printf("%4u %6s %5d %6d %7d\n", a.num, a.name, a.exama, a.examb, a.total);
    	printf("%4u %6s %5d %6d %7d\n", b.num, b.name, b.exama, b.examb, b.total);
    
    	return 0;
    }

     

    展开全文
  • C++结构体变量的初始化 C++对结构体变量可以在定义时指定初始值。 struct Student{ //自定义结构体变量 int num;//学号 char sex;//性别 int age;...可以引用一个结构体变量中的一个成员的值。

    C++结构体变量的初始化

    C++对结构体变量可以在定义时指定初始值。

    struct Student{ //自定义结构体变量 
        int num;//学号 
        char sex;//性别 
        int age;//年龄 
      }studeng1={1001,'M',24};
    

    C++结构体变量的引用

    C++在定义了结构体变量以后,可以引用这个变量。

    可以将一个结构体变量的值赋给另一个具有相 同结构的结构体变量。

    student1= student2;
    

    可以引用一个结构体变量中的一个成员的值。

    student1.num//表示结构体变量student1 student1 student1中的 成员的值
    

    引用结构体变量中成员的一般方式为

    结构体变量名. 成员名
    student1.num=11001;
    

    如果成员本身也是一个结构体类型,则要用若干个成员运算符,一级一级地找到最低一级的成员。

    不能将一个结构体变量作为一个整体进行输入和输出。
    例如:已定义student1和student2为结构体变量,并且它们已有值,不能这样输出结构体变量中的各成员的值:

    cout<<student1; //错误的
    

    只能对结构体变量中的各个成员分别进行输入和输出。

    对结构体变量的成员可以像普通变量一样进行各种运算。

    可以引用结构体变量成员的地址,也可以引用 结构体变量的地址。

    cout<<&student1;//输出student1的首地址
    cout<<&student1.num;//输出student1.num的地址
    

    案例:C++结构体变量的引用。

    #include<iostream>//预处理
    using namespace std;//命名空间 
    int main()//主函数 
    {
      struct Student{ //自定义结构体变量 
        int num;//学号 
        char sex;//性别 
        int age;//年龄 
      }student1={1001,'M',24};
      cout<<student1.num<<endl;//输出学号 
      cout<<student1.sex<<endl;//输出性别 
      cout<<student1.age<<endl;//输出年龄 
      return 0; //函数返回值为0;
    }
    

    编译运行结果:

    1001
    M
    24
    
    --------------------------------
    Process exited after 1.858 seconds with return value 0
    请按任意键继续. . .
    

    C++结构体变量的引用
    更多案例可以go公众号:C语言入门到精通

    展开全文
  • C语言-结构体变量引用

    千次阅读 2021-11-12 23:17:14
    例:有如下结构体 //声明一个结构体类型Student struct Student { //定义成员 int num; char name[23]; char sex; ...引用结构体变量的方式有两种: ...(2)引用一个结构体变量中的一个成员的值。例如:stud
  • 结构体成员变量引用

    千次阅读 2020-11-25 09:18:33
    如果把一个结构体变量的起始地址存放在一个指针变量,那么这个指针变量就是指向该结构体的变量。 为了使用方便和直观,C语言允许把(*p).num用p->num来代替,“->”代表一个箭头,p->num表示p所指向的...
  • 结构体引用结构体成员变量

    千次阅读 2020-11-05 17:02:01
    一个结构体包含一个或者多个成员变量,在实际使用,就需要对其成员变量进行引用,对于一个已经定义了的结构体变量和一个指向该结构体的指针变量。 可以用一下三种情况引用结构体 成员变量。 1、由结构体变量名...
  • 前面学习了变量和数组这些简单的数据结构,它们的特点是必须使用规定的数据类型。...结构体类型变量的 定义 和 引用结构体是一种复合数据类型,它由不同数据类型的存储单元组合。例如,学生的成绩表...
  • C++结构体变量引用

    千次阅读 2021-05-20 12:07:03
    在定义了结构体变量以后,当然可以引用这个变量,常用的方法有以下几种。...2) 可以引用一个结构体变量中的一个成员的值。例如, student1.num表示结构体变量student1的成员的值,如果student1...
  • c语言关于结构体的位置偏移原则简单,但经常忘记,做点笔记以是个记忆的好办法 原则有三个: a.结构体中的所有成员其首地址偏移量必须为器数据类型长度的整数被,其中第一个成员的首地址偏移量为0, 例如,若第二...
  • 一、定义结构体类型变量的方法 定义一个结构的一般形式为: struct 结构名 { 成员表列 }; 成员表列由若干个成员组成,每个成员都是该结构的一个组成部分。对每个成员也必须作类型说明,其形式为: 类型说明...
  • 结构体中定义另一个结构体类型变量可以吗typedefstructList_2{charClass_Name[Name_Maxsize];charClass_Term;charClass_Score;Stu_Score*next;}Stu_Score;typedefstructTree_1{intRoom_ID;Stu_Room*lchild,*rchild...
  • 一 结构体和结构体变量的区别和联系 1 结构体是自定义的数据类型,代表一类事物。 2 结构体变量(实例)是具体的,实际的,代表一个具体变量。 二 结构体变量在内存的布局 三 如何声明结构体 1 基本语法 type...
  • 结构体变量以及结构体数组

    千次阅读 2021-12-11 16:01:02
    结构体变量以及结构体数组 1、概述 C 语言允许用户自己指定这样一种数据结构,它由不同类型的数据组合成一个整体,以便引用,这些组合在一个整体的数据是互相联系的,这样的数据结构称为结构体,它相当于其它高级...
  • 由于经常要在函数结构体对象进行操作,所以函数形参常常都是传值一个结构体指针变量,自己有时为了偷懒,干脆在定义对象时直接定义结构体指针变量,这样实参就不用取地址了。 这样想是没有错,但是结构体指针...
  • C语言中结构体变量的定义及引用

    万次阅读 多人点赞 2018-08-08 16:05:24
    一、结构体变量的定义 1.结构体类型与结构体变量分开定义 一般形式如下: struct<结构体名><结构体变量名>; eg:struct student student1,student2; 关键字struct要与结构体名student一起使用,...
  • 结构体变量和结构体指针作形参的区别 含结构体变量和结构体指针变量形参的函数调用 指针和数组作为函数形参的区别 概念 结构体变量是指将不同的数据类型整合成一个有机的整体,以便于调用。 struct Student { ...
  • 在C语言结构体(struct)指的是一种数据结构,是C语言聚合数据类型(aggregate data type)的一类。 结构体可以被声明为变量、指针或数组等,用以实现较复杂的数据结构。结构体同时也是一些元素的集合,这些...
  • 结构体变量引用和赋值

    万次阅读 2016-12-26 09:04:20
    结构体变量引用和赋值   在今天之前,一直以为结构体变量的两种引用和赋值方法是可以随便换的,但其实并不是这样,想想也是,要不然干嘛定义两种方法,太浪费了啊 回归正题, 结构体变量引用和赋值,有两种形式...
  • 主要介绍了C++中结构体的类型定义和初始化以及变量引用,是C++入门学习的基础知识,需要的朋友可以参考下
  • 引用形式为:指针变量→成员;[例7-2] 对指向结构体类型变量的正确使用。输入一个结构体类型变量的成员,并输出。 代码如下:#include <stdlib> /*使用m a l l o c ( ) 需要* /struct data / *定义结构体* /{int day,...
  • 假设我们定义了一个结构体
  • C语言学习笔记之 结构体变量与结构体数组1.结构体类型struct student{int num;char name[20];char sex;int age;float score;};//要加“;”structstudentstudent1,student2;struct student{int num;char name[20];...
  • 一、首先我们来了解关于结构体以及结构体数组的概念。自定义结构体:struct weapon{char name[20];int atk;int price;};它是"weapon"型(类似于我们熟知的int型,String型等),里面有一个char类型,两个int类型。如何...
  • 结构体中成员的引用

    2021-10-23 19:06:43
    结构体如下:struct student { int num; char name[20]; char sex; float score; ...1. 结构体的初始化 ... struct student aa = {1001, "zhang...3.结构体中,字符数组的引用 char *q = aa.name; //q指向 "zhang" 。因...
  • 结构体变量的初始化和引用

    千次阅读 2021-01-21 18:28:37
    结构体变量的初始化和引用 任务描述 本关任务:从键盘输入两个学生的学号,姓名和成绩(整数),分别存入结构体,输出成绩较高的学生的学号,姓名和成绩。 相关知识 结构体类型用于描述由多个不同数据类型的数据...
  • C语言结构体变量不同的引用方式分析 “->” 指向与 '. '指向及相关辨析 引言 在对结构体变量引用方式,有两种最为常见的方式,一种是箭头(->)方式的引用,另一种就是点(.)方式的引用,对于这两种引用...
  • C语言结构体变量

    2021-05-20 13:16:22
    结构体是一个或多个变量...为了解决这样的问题,就要用到结构体这种构造类型,我们可以将每个学生的各项信息以不同类型的数据存放到一个结构体中,如用字符型表示姓名,用整型或字符型表示学号、用整型或实型表示成...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 100,740
精华内容 40,296
热门标签
关键字:

结构体中变量的引用