Если аргументов нет, вы пишете 0 и валидным образом выходите.
Правильно будет сообщить Usage и выйти с ненулевым кодом возврата.