Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
6.0.2 - Português

Change language to:
English - Français - 日本語 - Русский

Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function

Ajuda do Scilab >> Scilab > Control flow > try

try

início de um bloco try numa instrução de controle try-catch (significa "tentar...")

catch

início de um bloco catch numa instrução de controle try-catch (significa "prender...")

Seqüência de Chamamento

try
statements
catch
statements
end

Descrição

A instrução de controle try-catchpode ser usada para gerenciar códigos que possivelmente poderiam gerar erros.

Quando uma instrução de controle try-catch é executada, normalmente apenas as sentenças entre as palavras-chaves try e catchsão executadas. Contudo, se um erro ocorre durante a execução de uma dessas sentenças, o erro é registrado, as sentenças restantes até catchsão puladas e as sentenças entre as palavras-chaves catch e end são executadas usando-se o modo de manipulação de erros padrão.

A mensagem de erro registrada pode ser recuperada pela função lasterror .

As sentenças catch , tanto quanto a palavra-chave catch podem ser omitidas se nenhuma sentença alternativa for fornecida.

Note que também é possível utilizar a função execstr com o argumento'errcatch' para manipulação de erros. Isto pode ser particularmente útil para manipulação de erros sintáticos.

Exemplos

file_path=TMPDIR+'/wrong
try
  u=mopen(file_path,'r')
  x=mget(10,'c',u)
catch
  disp(['o arquivo '+file_path+ ' não pode ser lido',
        'usando valores padrões para x'])
  x=1:10
end
[error_message,error_number]=lasterror(%t)

Histórico

VersãoDescrição
6.0.0 try and catch are now protected: Assignments like try=1 or catch=2 are no longer possible.
Report an issue
<< then Control flow while >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Feb 14 15:00:33 CET 2019