c函数返回一个错误-如何退出程序



我在main中调用了4个函数,其中return 0表示成功,return -1表示失败。如果其中任何一个失败,我不想调用下一个函数,只需打印一条错误语句并退出即可。

我该如何实现?

int main(void)
{
deviceSync();
deviceInit();
devicesettings();
devicetakemeasurement();
}

你的意思是这样的吗?

#define FAILURE -1
int main() {
    if ( FAILURE == deviceSync() ) {
        fputs("Device Sync failedn",stderr);
        return EXIT_FAILURE;
    }
    if ( FAILURE == deviceInit() ) {
        fputs("Device Init failedn",stderr);
        return EXIT_FAILURE;
    }
    if ( FAILURE == devicesettings() ) {
        fputs("Device setting failedn",stderr);
        return EXIT_FAILURE;
    }
    if ( FAILURE == devicetakemeasurement() ) {
        fputs("Device take measurement failedn",stderr);
        return EXIT_FAILURE;
    }
    return EXIT_SUCCESS;
}

您需要为的每个函数运行if语句

int main(void)
{
    if(deviceSync())return -1;
    if(deviceInit())return -1;
    //...
}

当函数返回非零时,它将返回-1

编辑:对不起,我不应该把"nots"放在上

最新更新