do while(0)和break结合的实际应用是啥

如题
111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

while(0)条件为假,只会执行一次,不会循环。
break一般要与if语句结合使用,当符合某个条件时终止循环。

参考:

int foo()
{
 
    somestruct* ptr = malloc(...);
 
    do{
        dosomething...;
        if(error)
        {
            break;
        }
 
        dosomething...;
        if(error)
        {
            break;
        }
        dosomething...;
    }while(0);
 
    free(ptr);
    return 0;
 
}

可以用来取代goto跳转,可以参考下这篇文章,希望对你有帮助: