我正在尝试学习一些代码。我发现抛出NULL;声明。
看起来像
static void function(something)
{
some variables;
if(a.size > b.size) {
Throw NULL;
}
...more another codes
}
我什至不确定是否抛出 Null;正在前往..
看起来像 goto() 语句,但带有抛出值..
正常吗?我的意思是,代码当然可以工作,我不是一个有经验的人,但还没有见过这样的。(抱歉菜鸟说话)
最佳答案
这不是标准C,但看起来是模拟语言中的异常机制的东西(例如,可以使用setjmp/longjmp
来完成)。
最好的办法是查看预处理器输出(例如由 gcc -E
获得的输出),看看它实际上将其变成了什么。
或者,遵循头文件包含内容,因为其中之一几乎肯定会提供此模拟。
关于c - "Throw NULL"C 中的语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26332334/