evalc

Avalia código e retorna sua saída impressa como texto em vez de exibi-la.

Categoria: Programming > Programming Utilities

Sintaxe

T = evalc(expression)

Executa expression e retorna tudo que ele imprimiria como vetor de caracteres.

T = evalc(expression, catchExpr)

Executa catchExpr se expression gerar erro, e captura também a saída dele.

Descrição

Tudo que apareceria na janela de comandos, como a saída de disp, resultados sem ponto e vírgula e avisos, é reunido em T. As variáveis criadas pelo código continuam indo para o workspace de quem chamou. Usos típicos são capturar a exibição de um objeto para colocá-la em um rótulo ou log e testar o que uma função imprime.

O texto capturado termina com uma quebra de linha para cada linha impressa, então use strtrim ao comparar.

Argumentos de entrada

expression
Texto com o código a executar.
catchExpr
Texto com código a executar se expression falhar.

Argumentos de saída

T
Vetor de caracteres com a saída capturada, incluindo quebras de linha.

Exemplo

Capturando a saída impressa

s = evalc('disp(pi); x = 3')
t = strtrim(evalc('disp(1); disp(2);'));
fprintf('[%s]\n', t)
Saída
s = 
    '    3.1416
     x = 3
     '
[1
     2]

Veja também

eval evalin disp strtrim sprintf