[Cascavel-pm] Duvida execucao instrucoes em um programa
Luis Motta Campos
luismottacampos em yahoo.co.uk
Sexta Maio 4 00:18:23 PDT 2007
On May 3, 2007, at 7:08 PM, Patty Silva wrote:
> Ola Pessoal..
> Estou com uma duvida quanto a execucao de instrucoes em programas
> perl;;
> ex:
>
> tenho uma instrucao:
>
> system(`./pro_teste.exe`); ->executa um programa que gera saidas...
> open(OUT,">$ssaida");
>
> write(OUT);
> .
> .
> .
>
> minha duvida eh.. tudo que vem depois do system so sera executado
> quando ele terminar a sua execucao?? :D
A resposta curta: "sim".
A resposta média: "depende". Tem erros e formas de executar
programas que não retornam, e isso pode fazer o seu programa
congelar, ou mesmo nunca terminar de executar.
Eu observei que você usou backticks (`) no parâmetro do system().
CUIDADO. Backticks em perl tem significado especial, e pode causar
muitos problemas para você. Eu recomendo a todo mundo que use os
operadores q// (simple quote) ou qq// (double quote) para construir
strings, e tomar cuidado para verificar os valores de retorno do
system. O método correto de fazer isso está na documentação, leia
"perldoc -f system".
Putamplexos!
--
Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer,
Perl fanatic evangelist, and amateur {cook, photographer}
Mais detalhes sobre a lista de discussão Cascavel-pm