黑马程序员技术交流社区
标题:
构造类型及结构体
[打印本页]
作者:
956251361
时间:
2016-1-1 11:04
标题:
构造类型及结构体
1:构造类型:根据已定义的一个或多个数据类型用构造的方法来定义的。
一个构造类型的值可以根结成若干个成员或元素。每个成员都是一个基本数据类型或又是一个构造类型。
在C语言中,构造类型有以下几种:
数组类型
结构体类型
共用体(联合体)类型
2:结构体
一、什么是结构体
* 在前面已经介绍了C语言中的数组,用法跟其他语言差不多。当一个整体由多个数据构成时,我们可以用数组来表示这个整体,但是数组有个特点:内部的每一个元素都必须是相同类型的数据。
* 在实际应用中,我们通常需要由不同类型的数据来构成一个整体,比如学生这个整体可以由姓名、年龄、身高等数据构成,这些数据都具有不同的类型,姓名可以是字符串类型,年龄可以是整型,身高可以是浮点型。
* 为此,C语言专门提供了一种构造类型来解决上述问题,这就是结构体,它允许内部的元素是不同类型的。
结构体的定义
1.定义形式
结构体内部的元素,也就是组成成分,我们一般称为"成员"。
结构体的一般定义形式为:
复制代码
复制代码
1 struct 结构体名{
2
3 类型名1 成员名1;
4
5 类型名2 成员名2;
6
7 ……
8
9 类型名n 成员名n;
10
11 };
struct是关键字,是结构体类型的标志。
2:比如,我们定义一个学生
struct Student {
char *name; // 姓名
int age; // 年龄
float height; // 身高
};
上面定义了一个叫做Student的结构体,共有name、age、height3个成员。看到这里是否有点面向对象的味道呢,其实这跟面向对象完全是两码事,只能说感觉有点像。
#include <stdio.h>
int main(int argc, const char * argv[]) {
//定义一个iPhone结构体
struct iphoe{
char *color;
float screenSize;
int sn;
int imei;
}; //此处的分号不能省略
//定义一个学生结构体
struct Student{
char name[20];
char sex;
int age;
float score;
int sno;
};
return 0;
}
复制代码
作者:
明阳天夏
时间:
2016-1-3 12:35
有苦劳。。。。。。。。。。。。。。。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2