【C\C++语言入门篇】 结构体
前面两篇基本把指针给介绍完了,相信大家对指针已经不是那么陌生了。也不会因为指针和数组之间的关系而导致混淆了。大家可能也迫不及待想了解下后来的知识。今天我们就介绍下结构体。
对于结构体,既然叫结构体,形象上我们可以理解其就是一堆数据集合在一起形成一个结构。就比如一个学生的信息包括:学号、姓名、班级、年龄等等。这些信息都是属于这个学生的,因此我们就可以将这些信息统一绑定在一起。形成一个学生实体,这里有点C++的味道。我们学C也还是有必要这样思考。在我们周围几乎每一样东西都有它自己的信息或者组成。比如药品,它有什么功效,有什么成分等等都能统一绑定在一起形成一个实体,我们在程序中就能方便的访问这些实体的每一个信息或组成。因此,当我们在设计一个程序的时候,我们就能把一些具有共同特性或者组成元素集合到一起构成一个结构体。比如我们的学生就可以写成:
struct SStudent
{
char name[ 13 ]; // 姓名
char className[ 16 ]; // 班级名
char age; // 年龄
....
};
这样一来,学生这个活生生的实体就把所有关于他的信息集中在一起了。这样就能集中管理了,里面的每一个信息就能通过结构体变量来访问。先看看怎么访问:
C语言:
struct SStudent student;
student.age = 22;
C++:
SStudent student;
student.age = 22;
从上面可以看出要访问一个结构体成员是很方便的,同时也体现了实体的概念。我们将学生实体的年龄信息取出来赋值为22岁。就好像在使用某个东西的某个功能一样。这也是众多面向对象语言的一种思想。就是将程序数据封装话、结构化,我们要操作一个数据就跟现实生活中的使用某个工具的某个功能一样。我们看到上面C和C++版本访问唯一不同的就是C++版本在声明结构体变量的时候不需要在前面加上struct关键字,个人觉得后来C++觉得s
相关文档:
系统环境:Windows 7
软件环境:Visual C++ 2008 SP1 +SQL Server 2005
本次目的:编写一个航空管理系统
这是数据库课程设计的成果,虽然成绩不佳,但是作为我用VC++ 以来编写的最大程序还是传到网上,以供参考。用VC++ 做数据库设计并不容易,但也不是不可能。以下是我的程序界面,后面 ......
来自:http://blogger.org.cn/blog/more.asp?name=binaryluo&id=11408
C文件操作遇到的状况
1.将一个文件读到另一个文件,用“(ch = getc(fp)) != EOF”来判断文件是否结束,如果文件是全英文文本的话绝对没问题,新文件的大小和原文件大小一样;但是如果是一些有中文字符或者是二进制 ......
来自:http://zhangjunhd.blog.51cto.com/113473/100299
1.读写字符函数putc()与getc()
这两个函数类似于putchar()与getchar()函数。假设fp是一个FILE指针,ch是一个字符变量,
ch = getc(fp);// ch = getchar();
putc(ch,fp);// putchar(ch);
将文件内容(按字符)输出到标准输出的C实现:
#include <stdio.h ......
int main()
{
int a[] = {1,2,3,4,5};
int i;
int * p = a;
for (p = a + 4, i = 0; i < 5; i++) {
printf("%d ",p[-i]);
}
return 0;
}
......
由于程序运行时占用的内存过大,所以想办法给程序瘦身。
在调试中发现结构体占用的size竟然和预想的不一样,原来……
看看下面讲的吧,肯定会不枉此看哦!
1,比如:
struct{
short a1;
short a2;
short a3;
}A;
struct{
......