【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
相关文档:
今天项目组发生一个事情就是,后台aix上对多语言文本(英语+汉字)换行问题搞不太清楚。
最早前台的多字符的代码我检查了一下(按照0-128以外算中文的代码)发现不是安全的代码。
(delphi 7.0)
delphi安全的混合字符的操作方法是:
在strsUtils单元中
leftstr
MidStr
Rightstr
aix下是: ......
c:forEach vaStatus 属性
用c:forEach 中vaStatus的属性可以获得迭代的自身状态,如:
<c:forEach var="" items="" varStatus="status">
<c:out value="${status.index}"/> 此次迭代的索引
<c:out value="${status.count}"/> 已经迭代的数量
<c:out value="${status.first}"/> 是否是第一 ......
#
是生成字符串:
#define a(x) #x
a(bc
) => "bc"
##
是连接:
#define a(x) abc##x
&n ......
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;
}
......