结构体指针如何定义和使用 结构体与类的区别 |
您所在的位置:网站首页 › 如何在头文件中定义结构体 › 结构体指针如何定义和使用 结构体与类的区别 |
在C语言里面,我们知道数据类型有char、short、int、long等,并且还知道通过数组来构造数据的集合。但是通过数组来构造数据呢只能构造同一个类型的数据,比如说unsigned char buff[10]。这种都是属于unsigned char类型的数据。但是在不同的情况下,我们往往需要一些不同的数据类型组合成一种新的数据结构,比如说像学生的信息,包含学生名称、学号、性别、年龄等信息。那么这些参数里面可能有些是数组型、字符型、整型、甚至是结构体类型的数据。 一、结构体指针如何定义和使用 1、结构体指针的定义: struct 结构体名 *指针变量名; 实例如下: struct stu//先定义一个结构体 { char* name; int age; int num; }; struct stu s1,*s;//定义一个结构体变量和一个结构体指针。 2.、该结构体的使用范例如下: #include #include struct stu//定义一个结构体 { char* name; //char name[10]; int age; int num; }; int main(void) { struct stu s1,*s;定义一个结构体变量s.name = "Bob";//给结构体变量s赋值//strcpy(s.name,"Bob");//如果把name定义为一个数组则使用该语句赋值s.age = 22;s.num = 6;printf("name=%s\n", s.name);//输出结构体变量s的内容printf("age=%d\n", s.age);printf("num=%d\n", s.num);return 0;} 1、结构是实值类型(Value Types),而类则是引用类型(Reference Types)。 2、结构使用栈存储(Stack Allocation),而类使用堆存储(Heap Allocation)。 3、所有结构成员默认都是Public,而类的变量和常量数则默认位Private,不过其他类成员默认都是Public。 4、结构成员不能被声明位Protected,而类成员可以。 5、结构变量声明不能指定初始值、使用New关键字货对数组进行初始化,但是类变量声明可以。 6、结构不能声明默认的构造函数,也就是不拥有参数的非共享构造函数,但是类则无此限制。 7、二者都可以拥有共享构造函数,结构的共享构造函数不能带有参数,但是类的共享构造函数则可以带或者不带参数等等。 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |