定义和使用结构体变量

含义:由不同类型数据组成的组合型数据结构成为结构体。

1.建立结构体

1 struct MyStruct
2 {
3     long num;
4     float score;
5         char name[20];
6         int  age;
7     struct MyStruct *netx;
8 };

2.结构体变量的定义

(1).struct 结构体名

{

}变量名列表

如:

struct MyStruct
    {
      long num;
      float score;
      struct MyStruct *netx;
    }student1,student2;

时间: 2024-12-22 13:38:02

定义和使用结构体变量的相关文章

语言中结构体变量和结构体类型的定义

1.结构体类型定义 定义方式1: Typedef struct  LNode {    int  data;  // 数据域    struct LNode   *next;  // 指针域 } *LinkList; 定义方式2: struct  LNode {    int  data;  // 数据域    struct LNode   *next;  // 指针域 }: Typedef struct  LNode  *LinkList; 以上两个定义方式是等价的,是将*LinkList定义

程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。函数fun的功能是:对形参b所指结构体变量中的数据进行修改,并在主函数中输出修改后的数据。

程序通过定义学生结构体变量,存储学生的学号.姓名和3门课的成绩.函数fun的功能是:对形参b所指结构体变量中的数据进行修改,并在主函数中输出修改后的数据.例如,若b所指变量t中的学号.姓名和三门课的成绩一次是:10002."ZhangQi".93.85.87,修改后输出t中的数据应为:10004."Lijie".93.85.87. #include <stdio.h>#include <string.h>struct student { lo

全局结构体变量的初始化以及将结构体变量转换为char类型输出问题

#include<stdio.h> #include<stdlib.h> struct node{ int a; int b; char c; char d; }; /*struct node A; 全局变量不能在这儿进行初始化,令我震惊啊,错误让你迷茫到死 A.a=1; A.b=2; A.c='a'; A.d='c';*/ //struct node A={1,2,'a','c'};但是这种写法可以 1:初始化和赋值不是一个概念. 2:// 在全局空间(即函数体之外)只能执行数据

结构体变量的sizeof计算

结构体字节对齐准则: 1. 结构体变量的首地址能够被其最宽基本类型成员的大小所整除: 2. 结构体每个成员相对于结构体首地址的偏移量都是当前成员大小的整数倍,如有需要编译器会在成员之间加上填充字节: 3. 结构体的总大小为结构体最宽基本类型成员大小的整数倍,如有需要编译器会在最末一个成员之后加上填充字节. 4. 在嵌套结构中需要把内部‘打散'后再进行对齐计算. // sizeof(结构体).cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #inc

使用结构体变量存储学生姓名和课程成绩,计算平均分及查找不及格同学姓名及分数

1 struct Student //声明Student类型结构体变量 2 { 3 char name[20]; 4 int score[5]; 5 }; 6 typedef struct Student Stu; 7 8 void main() 9 { 10 11 Stu stu[3]; 定义Student类型变量数组 12 int i,j; 13 for(i=0;i<3;i++) //输入学生姓名和成绩 14 { 15 printf("please input student[%d]'

c++指向结构体变量指针

转自http://www.jb51.net/article/42140.htm 定义: 结构体变量的指针就是该变来那个所占据的内存段的起始地址.可以设一个指针变量,来指向一个结构体变量,此时该指针变量的值是结构体变量的起始地址. 设p是指向结构体变量的数组,则可以通过以下的方式,调用指向的那个结构体中的成员: (1)结构体变量.成员名.如,stu.num. (2)(*p).成员名.如,(*p).num. (3)p->成员名.如,p->num. 代码如下: #include<iostrea

(struct)结构体变量作为函数参数调用的方法小结

结构体变量.结构指针变量.结构数组作为函数的参数应用实例分析 struct stud { long int num; float score; }; /*结构体变量作为函数的参数,修改之后的成员值不能返回到主调函数*/ void funvr(struct stud t) { t.num=2000101; t.score=71.0; } /*结构体数组作为函数的参数,修改后的元素的成员值能返回到主调函数*/ void funar(struct stud t[]) //void funar(stru

在C代码中将结构体变量作为参数传递效率忒低

在C语言编程中,我们几乎不可能看见有人将一个结构体变量作为参数进行传递,因为效率太低了.本文尝试从反汇编的角度给出其中的原因. 对于C语言来说,所有的参数传递都是值传递.如果一个变量为指针,那么传递的就是指针变量的值(即某个内存地址). 那么,如果一个参数是结构体变量(包括多个成员),怎么从caller传递到callee呢? 先看下面的代码片段: o foo1.c 1 #define FALSE 0 2 #define TRUE (!0) 3 4 typedef struct point_s {

c语言:通过指向结构体变量的指针变量输出结构体变量中成员的信息

通过指向结构体变量的指针变量输出结构体变量中成员的信息. 解:程序: #include<stdio.h> #include<string.h> int main() { struct Student { long int num; char name[20]; char sex[10]; float score; }; struct Student stu_1;//定义struct Student类型的变量stu_1 struct Student *p; p = &stu_