Ben*_*ard 1 c logic struct if-statement
假设我有两个不同的结构,Struct1和Struct2.它们都有不同的元素.如果我像这样比较它会发生什么:
if((Struct1) && (Struct2))
{
doSomething();
}
Run Code Online (Sandbox Code Playgroud)
我刚刚发现了一些具有这种逻辑的代码,并且想知道发生了什么.谢谢!
编辑: Struct1和Struct2都指向两个不同的结构,而不是结构本身.
在一个结构中使用ifC是非法的语法 - 一致的编译器不会接受它.换句话说:你不能在布尔上下文中使用结构.
最有可能在你的代码中 - 如果它是真正的代码 - Struct1不是结构,而是(可能)指针或其他东西.在这种情况下,如果两者都是非NULL,则将采用if.