Como chamar um programa em C através de outro programa

Olá pessoal…

Hoje vou mostrar como criar um código fonte em C, e executar essa função através de outro código fonte.



O recurso de se criar funções separadas em arquivos está em reaproveitá-las em outras funções, como por exemplo, uma função genérica para pegar a data de nascimento e retornar a idade, poderia fazer em um arquivo .c e usar em outras rotinas.

No nosso caso, serão criados dois fontes, o primeiro o teste2.c, sendo esse apenas para ler a variável e retorná-la à outra função.

#include <stdio.h>

int teste2(){
	int valor;

	//Lê a variável valor
	printf("ok: ");
	scanf("%d", &valor);

	//Retorna a variável valor
	return valor;
}

O segundo fonte é o teste1.c, nele devemos declarar no include que será utilizado o arquivo teste2.c (entre aspas), e dentro do meu fonte, basta chamar a função teste2() que existe dentro do teste2.c.

#include <stdio.h>
#include "teste2.c"

int main(){
	//Chamando a função para pegar o valor
	int aux = teste2();

	//Demonstrando valor lido e esperando usuário apertar o -Enter-
	printf("\n-->%d", aux);
	getch();

	//Finalizando a rotina
	return 0;
}

Abaixo um print de teste de utilização do programa.

Teste de execução da rotina

Teste de execução da rotina

Obs.: No exemplo demonstrado acima, os dois arquivos .c devem estar no mesmo diretório.

Bom pessoal, por hoje é só.
Abraços e até a próxima.

Dan (Daniel Atilio)
Cristão de ramificação protestante. Especialista em Engenharia de Software pela FIB, graduado em Banco de Dados pela FATEC Bauru e técnico em informática pelo CTI da Unesp. Entusiasta de soluções Open Source e blogueiro nas horas vagas. Autor e mantenedor do portal Terminal de Informação.

7 Responses

  1. dte005 disse:

    Boa tarde amigo!

    fiz seu exemplo, porem esta me dando erro de multipla definicao!

    estou usando linux (ubuntu 16.04).

    abs.

  2. Silvio S.Santos disse:

    Ola senhor Dan_atilio sou novato, estou cursando analise e desenvolvimento de sistemas tenho que fazer um programa em linguagem C que manipule uma estrutura chamada Veículo. A estrutura deve ter os campos marca, modelo, nome do proprietário, tamanho do tanque de combustível em litros.
    Faça 2 rotinas, uma para ler os dados do veículo, outra para mostrar seus dados. A função de leitura pode gerar os dados aleatoriamente se você preferir. Ou ainda preencha todas as entradas com valores constantes, escolhendo os dados de sua preferência.
    Gerar um vetor com 50 registros para uma concessionaria. Faça então as seguintes funções de pesquisa:
    • Mostrar o nome do proprietário de todos os veículos de uma certa marca/modelo. Aproveite para contá-los também na mesma rotina.
    • Calcular quanto custa para encher o tanque de combustível, para cada veículo do vetor. O valor do litro do combustível pode ser dado por parâmetro. Calcule também o total gasto pela concessionária para encher todos os tanques.

    Na função main(), faça:
    • Carregar os 50 veículos.
    • Chamar as funções de pesquisa.
    • Mostrar todos os resultados.

    Tem como me ajudar como fazer pois não sei como começar desde já agradeço.

Deixe uma resposta

Terminal de Informação