C++程序设计:结构体变量初始化详解

需积分: 13 4 下载量 175 浏览量 更新于2024-08-23 收藏 8.66MB PPT 举报
"对局部变量类型的结构体变量初始化-C++面向对象程序设计 谭浩强" 在C++编程中,初始化局部变量类型的结构体是非常常见的操作。这段描述中展示了一个简单的例子,说明如何初始化一个名为`student`的结构体变量。在C++中,结构体是一种自定义的数据类型,允许我们将多个不同类型的成员组合在一起。在这个例子中,`student`结构体包含了四个成员:一个`long int`类型的`num`,一个字符数组`name`,一个字符`sex`,以及另一个字符数组`addr`。 初始化结构体变量时,我们可以使用初始化列表的方式,就像初始化普通类对象一样。在给出的代码中,`student1`是`student`类型的局部变量,它的初始化列表如下: ```cpp struct student { long int num; char name[20]; char sex; char addr[30]; } student1 = {901031, "Li Lin", 'M', "123 Beijing Road"}; ``` 这里,`901031`被赋值给`num`,字符串"Li Lin"被赋值给`name`,字符'M'给`sex`,"123 Beijing Road"给`addr`。每个成员都按照顺序对应初始化,这样就创建了一个包含具体信息的学生对象。 接下来的输出语句`cout << student1.name << endl;`会打印出`name`成员的值,即"Li Lin",这在描述中已经提到,输出结果为`LiLin`,注意这里没有空格,因为输出时连续的字符数组不会自动添加空格。 这个例子不仅展示了结构体的初始化,还强调了C++中的字符串处理,即字符数组。字符数组用于存储字符串,它们在内存中是连续的字符序列,可以使用双引号来初始化。在输出时,C++标准库中的`cout`对象配合`<<`运算符可以方便地打印出结构体成员的值。 C++语言的发展历程和特性也在描述中有所提及。C++是在C语言的基础上发展起来的,它引入了面向对象编程的概念,如类、对象、封装、继承和多态等。C++语言的设计兼顾了效率和抽象能力,使得它在系统级编程、应用程序开发以及游戏开发等领域广泛应用。 C语言的特点包括其结构化特性、高效的执行效率、良好的可移植性以及对位操作的支持。虽然语法相对宽松,对于初学者来说调试可能有一定难度,但一旦掌握了C语言,就能编写出高效且通用的程序。C++在C的基础上增加了更多高级特性,旨在提供更强大和灵活的编程模型。