if与assert区别

xiaoxiao2021-02-28  39

声明:

程序一般情况下分为Debug和Release,Debug用于内部测试,Release用于用户使用。

assert

头文件:#include<assert.h>

断言仅在Debug版本起作用和宏一样,它用于检查不应该发生的情况。如果断言失败,则程序会终止。

char *my_strcpy(char *des,const char *src) { //单个语句 if(des == src) return des; //如果断言失败,即为空则终止程序 assert((des !=NULL) && (src != NULL)); char *address = des; while((*des++ = *src++) !='\0'); return address;

if

表达式的值为真则执行当前语句,否则不执行。if既可以用于判断一条语句;也可以判断复合语句。

区别:

1、if判断语句,如果条件为真,则进行下一条语句;如果条件不为真,执行相反的语句 2、assert,断言不成立时,直接终止 3、if用于检测代码的正确性;assert检测代码的合法性,若断言失败,程序就不能运行

转载请注明原文地址: https://www.6miu.com/read-2624678.html

最新回复(0)