Ir ao conteúdo
  • Cadastre-se
cmdmss

Passagem de parametros para uma biblioteca usando ponteiros

Recommended Posts

Prezados colegas,

estou com uma duvida em um exercicio que estou desenvolvendo.

O professor pede para passarmos por ponteiros, dados que são informados pelo usuario. Consegui desenvolver alguma coisa, mas não consigo compilar o projeto. Eis o que estou fazendo.

Arquivo principal.c

#include <stdio.h>
#include <stdlib.h>
#include <ed1.h>

int main (){
float ro,raio,vol,*ra,*rv;
printf("Digite o raio:");
scanf("%f",ro);
raio=ro;
vol=ro;
ra=&raio;
rv=&vol;
calc_esfera(rv,ra);
printf("A área é %f",*ra);
printf("O volume é %f",*rv);
}

Arquivo ed1.h

#ifndef ED1_H_
#define ED1_H_
#include(math.h)
void calc_esfera (float *rv,float *ra){
float volume,area;
volume=((4*3,14)*(pow(*rv,3)))/3;
rv=&volume;
area=(4*3,14) * (pow(*ra,2));
ra=&area;
}
#endif /* ED1_H_ */

Estou quebrando a cabeça aqui, mas nao sei o que da errado.

No erro do compilador ele aponta:

10 C:\Documents and Settings\caio\Desktop\rev_edI\xulambs.c ed1.h: No such file or directory.

E também diz que eu nao declarei a função, mas a função está no arquivo .h, por isso nao a declarei.

Por favor colegas, agradeço quem puder ajudar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Substitua:

#include <ed1.h>

, por:

#include "ed1.h"

Por quê? Porque quando você usa <xxxx.x> você está dizendo para o compilador procurar o arquivo no diretório(s) padrão(ões) de cabeçalhos. Já quando você usa "xxx.x", você especifica para ele procurar a partir do diretório em que está arquivo que tem a diretiva include, e todo caminho relativo especificado aí, toma como base esse diretório.

A mensagem de erro é bem clara, ele não encontrou o arquivo especificado, daí é simples inferir que se ele não o encontrou não vai encontrar suas definições e declarações, o difícil realmente, é adivinhar que isso provem do mal uso da definição de path para busca de cabeçalhos...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×