quarta-feira, 29 de janeiro de 2014

Usando parâmetros em um arquivo .bat

Olá pessoal,

alguns scripts são necessários no dia a dia para a automação de algumas atividades e no windows podemos utilizar arquivos .bat para facilitar nossa vida...
Vou mostrar um exemplo básico de um arquivo .bat recebendo um parâmetro de entrada do usuário.

1º Passo: Criar um arquivo .bat: crie um arquivo txt e em seguida salve-o com a extensão .bat
2º Passo: Escrever os comandos no arquivo. ex: echo ola!
3º Passo: Executar o arquivo no prompt de comando. ex: exemplo.bat + [ENTER]

Para adicionar o parâmetro modificaremos nosso arquivo da seguinte forma, echo ola %1 !, dessa maneira o primeiro parametro passado irá substituir o "%1".

Para roda-lo novamente: exemplo.bat parametro1
e o resultado será: ola parametro1!

Espero ter ajudado, até a próxima...

segunda-feira, 27 de janeiro de 2014

Linguagem C - Utilizando funções de outro arquivo .c

Olá pessoal,

me deparei com uma dúvida esse semana em relação a programação em C, tenho pouco conhecimento na linguagem, mais agora estou precisando estuda-lá. Em java consigo facilmente utilizar funções que estão em outro arquivo java, por exemplo, tenho o arquivo1.java e preciso utilizar alguma função do arquivo2.java. Mais como fazer isso em C???

Vamos para a solução:
- Vamos supor que temos 2 arquivos, arq1.c e arq2.c e que em arq2.c temos uma função que deve ser utilizada em arq1.c
- Quais passos devemos seguir?


  1. Criar um terceiro arquivo onde sua extensão deve ser .h (exemplo lib.h)
  2. Dentro desse arquivo lib.h devemos colocar todos os prototipos* das funções que são utilizadas dentro de arq2.c
  3. Dentro do arquivo arq2.c deve ser mantida a função completa. 
  4. Dentro dos dois arquivos arq1.c e arq2.c coloque lá em cima nos includes o seguinte código: #include "lib.h" (note que deve ser com aspas).

*protótipo de função é a declaração da função, por exemplo:

a função abaixo:
void soma() {
   a = b + c;
}

O seu protótipo será a primeira linha, mas ao invés da chave, terá ponto e vírgula, assim:
void soma();


Nosso código ficaria dessa forma:

arq1.c

#include"lib.h"

int main(){
imprimir();
return 0;
}


arq2.c

#include"lib.h"
#include<stdio.h>


void imprimir(){
printf("teste");
}

lib.h

void imprimir();