解引用* 与 assert()

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

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

2. 测试

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

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

原型是: 指针

#include<assert.h> htm

void assert(int expression); blog

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后缀。

相关文章
相关标签/搜索