C语言复习:结构体变量与指针操作解析

需积分: 34 5 下载量 97 浏览量 更新于2024-07-13 收藏 3.98MB PPT 举报
"结构体变量的使用-c语言考前突击复习" 在C语言中,结构体(struct)是一种构造数据类型,允许我们组合多种不同类型的变量于一个单一的实体,也就是结构体变量。在给定的描述中,可以看到一个简单的结构体`student`的例子,它包含三个成员:一个整型变量`num`,一个字符数组`name`,以及一个字符变量`sex`。 ```c struct student { int num; char name[20]; char sex; }; ``` 在这个定义中,`struct student`创建了一个新的数据类型,`student`,其中包含了三个成员。`num`用于存储学号(整数),`name`用于存储学生姓名(最多20个字符的字符串),而`sex`用于表示性别(通常使用字符'f'代表女性,'m'代表男性)。 接着,定义了两个结构体变量:`student1`和`stu`数组。`student1`是一个单独的结构体实例,而`stu`是一个包含10个`student`类型的元素的数组。 ```c struct student student1, stu[10]; ``` 在`main`函数内部,使用指针`p`来操作`student1`。指针`p`被初始化为指向`student1`的地址,这可以通过`&student1`得到。然后,通过指针`p`来修改`student1`的`num`和`sex`: ```c student *p; p = &student1; p->num = 2010; // 通过箭头操作符访问并修改num (*p).sex = 'm'; // 通过解引用操作符访问并修改sex ``` 这里,`p->num`等同于`(*p).num`,都是用来访问并修改`p`所指向的结构体的`num`成员。 此外,还对数组`stu[0]`的成员进行了初始化: ```c stu[0].num = 20091234; // 初始化数组的第一个元素的num stu[0].sex = 'f'; // 初始化数组的第一个元素的sex ``` 在C语言的学习中,结构体是编程中非常重要的一个部分,尤其是在处理复杂数据组织时。它们允许我们将相关数据打包在一起,形成更复杂的抽象数据类型。结构体变量可以通过指针进行操作,这样可以提高程序的灵活性和效率。结构体也可以作为函数参数传递,或者作为其他结构体的成员,以构建更复杂的数据结构,比如链表、树等。 复习C语言时,除了结构体之外,还需要关注其他章节的知识点,如数据类型、运算符、表达式、控制流程(顺序、选择、循环)、数组、函数、预处理命令、指针、共用体、文件等。每个章节都包含了C语言的基础概念和核心技能,是编写高效、可靠代码的关键。例如,理解各种运算符的优先级和作用、熟练掌握函数的定义和调用、熟悉数组的使用和指针的操作,这些都是C语言程序员必备的技能。在考试或实际项目中,这些知识的应用将十分广泛。