Tipos criados e passagem de parâmetro para outras funções

1. Tipos criados e passagem de parâmetro para outras funções

Dan
dan108

(usa Outra)

Enviado em 10/06/2016 - 10:45h

Estou tentando realizar um programa que possui vários arquivos separados que possuem outras funções que serão utilizado na função principal e em outras funções. Porem quando tento passar por parâmetro um tipo criado, não int, void,char..., o copilador informa que não reconheci o tipo. Vou dar um exemplo para ficar mais claro:

#include"head.h"
typedef struct
{
char *nome;
}T_vetores;

int main(int argc, char const *argv[]) {

T_vetores vetores;
char nome[30];

vetores.nome = malloc(30*sizeof(char));

printf("Digite um nome: ");
fgets(nome,30*sizeof(char),stdin);

memcpy(vetores.nome,nome,sizeof(char)*30);
printf("%s\n",vetores.nome);

salva(&vetores);
free(vetores.nome);

return 0;
}



A função salva() esta em outro arquivo

#include"head.h"


void salva(T_vetores *vetores)
{
FILE *arq;
arq=fopen("date.dat","wb");
int len=strlen(vetores->nome);

len+=1;

fwrite(&len,1,sizeof(int),arq);
fwrite(vetores->nome,strlen(vetores->nome)+1,sizeof(char),arq);
fclose(arq);
}



E as duas importao a mesma biblioteca criada "head.h"

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

void salva(T_vetores *vetores);



Tento copilar mas informa que o tipo T_vetores é desconhecido. Como faço para que reconheça tipos criados e possa passar por parâmetro para outras funções?
Obrigado dês de já


  


2. Re: Tipos criados e passagem de parâmetro para outras funções

Paulo
paulo1205

(usa Ubuntu)

Enviado em 12/06/2016 - 19:04h

Normalmente você coloca num arquivo de cabeçalhos (“.h”) as declarações de tipos de dados, macros, variáveis globais e funções relacionadas ao mesmo assunto. Por exemplo, o cabeçalho <time.h>, que é parte da biblioteca padrão, declara todos os tipos vinculados a medição e representação do tempo (tais como time_t, struct tm, struct timespec etc.) e todas as funções que manipulam dados desses tipos (e.g. time(), localtime(), clock_gettime() e muitas outras), além de constantes usadas com tais funções e algumas variáveis globais.

Você poderia fazer algo parecido.


3. Re: Tipos criados e passagem de parâmetro para outras funções

Perfil removido
removido

(usa Nenhuma)

Enviado em 13/06/2016 - 02:40h

Já tentou passar a declaração de estrutura e tipo para o outro arquivo?

----------------------------------------------------------------------------------------------------------------
Nem direita, nem esquerda. Quando se trata de corrupção o Brasil é ambidestro.
(anônimo)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden[/quote]






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts