Página 1 de 1
Como criar programa que aceite parâmetros externos?
Enviado: 15 Set 2009 20:13
por labaroazul
Boa noite, amigos!
Gostaria de criar um programa que, nos moldes do ARJ, aceitasse parâmetros externos. Como posso fazer isso no Clipper?
Re: Como criar programa que aceite parâmetros externos?
Enviado: 15 Set 2009 20:22
por Maligno
Mais fácil do que se poderia imaginar. Você só precisa usar uma função como entrada para o seu programa e nesta função, declarar os parâmetros que ela precisará conter. Algo do tipo:
É como numa função qualquer. Pode-se usar PCount() para descobrir quantos argumentos existem. Apenas lembre-se que o processo de compilação deve conter o
switch /n, pois o Clipper, tradicionalmente, foi feito para trabalhar com
procedures.
E na execução, mais simples ainda: basta informar os argumentos necessários.
Como criar programa que aceite parâmetros externos?
Enviado: 19 Set 2009 10:35
por Pablo César
Um exemplo claro de como trabalhar com parâmetros externos (adoro utilizá-los), veja:
Código: Selecionar todos
// TESTE.PRG (exemplo de parâmetros externos)
PARAMETERS cNome, cVezes
IF cNome=NIL
? "Precisa informar o 1º parametro. Exemplo: TESTE "Labaro Azul"
ENDIF
IF cVezes=NIL
? "Precisa informar o 2º parametro. Exemplo: TESTE "Labaro Azul" 7
ENDIF
mostra(cNome,val(cVezes)
FUNCTION MOSTRA(cNom,nVezes)
FOR I=1 TO nVezes
? cNom
NEXT
Observe que a quantidade de parâmetros foi definida na hora em que é definido os nomes das variáveis as quais o Clipper irá atribuir automaticamente conforme o número de parâmetros usados. Também veja que o recebimento dos parâmetros são tratados de forma independente que é muito importante. Espero ter ajudado a esclarecer melhor, tiver dúvidas é só postar.
Re: Como criar programa que aceite parâmetros externos?
Enviado: 19 Set 2009 13:22
por alxsts
Saudações a todos!
Observe tambem que todos os parâmetros da linha de comando são passados ao Clipper no formato caracter.
Pablo:
Bem-vindo de volta!
Re: Como criar programa que aceite parâmetros externos?
Enviado: 19 Set 2009 13:33
por Maligno
Sim, isso mesmo. Se alguém precisar de outro tipo de dado, terá de converter na recepção dos argumentos.