Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - 日本語

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

Ajuda Scilab >> Funções > execstr

execstr

executa código Scilab em strings

Seqüência de Chamamento

execstr(instr)
ierr=execstr(instr,'errcatch' [,msg])

Parâmetros

instr

vetor de strings, instrução Scilab a ser executada.

ierr

inteiro, 0 ou número de erro.

msg

string com valores 'm' ou 'n'. O padrão é 'n'.

Descrição

Executa as instruções Scilab fornecidas pelo argumento instr.

Note que instr não deve fazer uso de marcas de continuação(..)

Se o flag 'errcatch' não estiver presente, a manipulação de erros ocorre de maneira usual.

Se o flag 'errcatch' for ajustado, e um erro for encontrado enquanto são executadas as instruções definidas em instr, execstr não imprime uma mensagem de erro, mas aborta a execução das instruções instr (no ponto onde o erro ocorreu) e retorna com ierr igual ao número de erro. Neste caso a exibição da mensagem de erro é controlada pela opção msg :

"m"

a mensagem é exibida e registrada.

"n"

nenhuma mensagem de erro é exibida, mas a mensagem de erro é registrada (ver lasterror). Este é o padrão.

ierr= execstr(instr,'errcatch') pode manipular erros sintáticos. Isto é útil para a avaliação de uma instrução obtida por uma pegunta ao usuário.

Exemplos

execstr('a=1') // ajusta a=1.
execstr('1+1') // faz nada (enquanto evstr('1+1') retorna 2)

execstr(['if %t then';
         '  a=1';
         '  b=a+1';
         'else'
         ' b=0'
         'end'])

execstr('a=zzzzzzz','errcatch')
execstr('a=zzzzzzz','errcatch','m')

//erros de sintaxe
execstr('a=1?02','errcatch')
lasterror(%t)

execstr('a=[1 2 3)','errcatch')
lasterror(%t)

Ver Também

  • evstr — avaliação de expressões
  • lasterror — retorna a última mensagem de erro registrada
  • error — mensagens de erro
  • try — início de um bloco try numa instrução de controle try-catch (significa "tentar...")
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu May 12 11:45:28 CEST 2011