解引用* 与 assert()

1.*,翻译为解引用。指的是“取指针指向的地址的内容”。

指针变量存储”其他变量”的地址,当我们用“*”去操作指针时,取出指针所指内存区域的值。

2.

参考:http://ylwn817.blog.sohu.com/145220898.html

 assert()是C 语言标准库中提供的一个通用预处理器宏,在代码中常利用assert()来判断一
个必需的前提条件以便程序能够正确执行。

原型是:

#include<assert.h>

void assert(int expression);

assert的作用是用先计算表达式expression,如果为假(0),则向stderr打印出错信息,然后调用abort来终止程序运行。

应用举例:

假定我们要读入一个文本文件,并对其中的词进行排序。必需的前提条件是文件名已经提供给我们了这样我们才能打开这个文件。
为了使用assert() 必须包含与之相关联的头文件
#include <assert.h>

 //for example:
assert( filename != 0 );
assert()将测试filename 不等于0 的条件是否满足这表示为了后面的程序能够正确执
行我们必须断言一个必需的前提条件如果这个条件为假即filename 等于0 断言
失败则程序将输出诊断消息然后终止

还需要说明的是

assert.h是C语言的头文件,而C++ 中头文件是 cassert.

C++的头文件总是C的头文件加c,然后后面去掉.h后缀。


你可能感兴趣的:(指针,assert)