【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
相关文档:
假定经过了若干年的演进, IT技术发展到了这种程度:
1) 联网: 随时随地有无限大的带宽, 用户可以完全免费使用网络, 以及无线网络100%的覆盖率;
2)PC性能:每台电脑都有足够的内存, 足够快的CPU; 在永久存储领域出现革命性技术, 即访问外部存储时间和访问内存时间在同一数量级;
3) B/S开发技术: 大量成熟的we ......
#
是生成字符串:
#define a(x) #x
a(bc
) => "bc"
##
是连接:
#define a(x) abc##x
&n ......
在看代码时看到如下的代码:
#ifdef __cplusplus
extern "C" {
#endif
面试时被问到过,不甚明了,网上百度一下,整合了两个仁兄的文章,如下。:-)
时常在cpp的代码之中看到这样的代码:
#ifdef __cplusplus
extern "C" {
#endif
//一段代码
#ifdef __cplusplus
}
#endif
� ......
Android编译环境(1) - 编译Native C的helloworld模块
Android编译环境本身比较复杂,且不像普通的编译环境:只有顶层目录下才有Makefile文件,而其他的每个component都使用统一标准的Android.mk. Android.mk文件本身是比较简单的,不过它并不是我们熟悉的Makefile,而是经过了Android自身编译系统的很多处理,因此要� ......