Как завершить с ненулевым статусом выхода в коде Swift - PullRequest
0 голосов
/ 23 марта 2019

У меня проблема в том, что я должен разделить два числа, и если второе число равно нулю, то я должен показать сообщение об ошибке и завершить с ненулевым состоянием exis.Я могу показать сообщение и просто вернуться с помощью оператора return, но не знаю, как вернуть ненулевой статус выхода.

1 Ответ

2 голосов
/ 23 марта 2019

Предполагая, что речь идет о программе командной строки: Вы можете вызвать функцию exit() из стандартной библиотеки C:

if denominator == 0 {
    print("denominator is zero")
    exit(EXIT_FAILURE)
}

Если вы хотите напечатать сообщение со стандартной ошибкой, используйте

if denominator == 0 {
    fputs("denominator is zero\n", stderr)
    exit(EXIT_FAILURE)
}

(или использовать подход из Как печатать на stderr с помощью Swift? ).Альтернатива -

if denominator == 0 {
    fatalError("denominator is zero")
}

, которая печатает диагностическое сообщение со стандартной ошибкой и завершает программу с ненулевым состоянием выхода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...