Ir ao conteúdo
  • Cadastre-se

C O que colocar no .h e no .c?


Ir à solução Resolvido por arfneto,

Posts recomendados

Estou precisando criar uma biblioteca, mas não sei o que coloco no arquivo .h e no .c, alguém saberia me dizer?

Só sei que o protótipo das funções se coloca no .h e o corpo delas no .c, não sei o motivo, mas pelo o que vejo por aí é isso.

Daí me resta saber onde coloco as struct's, typedef's, #define's, #include's, const's.

 

Agradeço pela atenção.

Link para o comentário
Compartilhar em outros sites

Podemos descobrir com exemplos investigando o conteúdo nos arquivos de cabeçalho da biblioteca padrão.

 

Você tem compilador instalado em seu computador? Vá no direito procure pelas pasta include e abra stdio.h

 

Resumindo: 

Tem tudo que seu usuário pode/precisa para valer-se da biblioteca de funções, inclusive descrição das características e das funcionalidades.

 

 

Fiz rapidinho um busca e encontrei esse tutorial, penso ser uma boa maneira para começar: https://profes.com.br/MarceloPastorino/blog/como-fazer-uma-biblioteca-em-c 

 

 

Outro em vídeo:

 

  • Curtir 1
  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

  • Solução
Em 15/05/2021 às 10:21, Luccas Fernando disse:

Estou precisando criar uma biblioteca, mas não sei o que coloco no arquivo .h e no .c, alguém saberia me dizer?

Só sei que o protótipo das funções se coloca no .h e o corpo delas no .c, não sei o motivo, mas pelo o que vejo por aí é isso.

Daí me resta saber onde coloco as struct's, typedef's, #define's, #include's, const's

 

 

Note que nenhum dos dois é a biblioteca. 

 

Você vai usar o compilador C no caso para criar o código de sua biblioteca. E vai gerar um arquivo com extensão LIB no windows usando o programa.... LIB 

 

clube> lib /?
Microsoft (R) Library Manager Version 14.28.29915.0
Copyright (C) Microsoft Corporation.  All rights reserved.

usage: LIB [options] [files]

   options:

      /DEF[:filename]
      /ERRORREPORT:{NONE|PROMPT|QUEUE|SEND}
      /EXPORT:symbol
      /EXTRACT:membername
      /INCLUDE:symbol
      /LIBPATH:dir
      /LINKREPRO:dir
      /LINKREPROTARGET:filename
      /LIST[:filename]
      /LTCG
      /MACHINE:{ARM|ARM64|ARM64EC|EBC|X64|X86}
      /NAME:filename
      /NODEFAULTLIB[:library]
      /NOLOGO
      /OUT:filename
      /REMOVE:membername
      /SUBSYSTEM:{BOOT_APPLICATION|CONSOLE|EFI_APPLICATION|
                  EFI_BOOT_SERVICE_DRIVER|EFI_ROM|EFI_RUNTIME_DRIVER|
                  NATIVE|POSIX|WINDOWS|WINDOWSCE}[,#[.##]]
      /VERBOSE
      /WX[:NO]

clube> 

 

 

E aí claro o programa C desaparece. 

 

E como alguém vai usar sua bibioteca? 

 

Você vai criar um arquivo em geral com a extensão h, onde estão os protótipos das funções e constantes de sua biblioteca e vai distribuir os dois, o arquivo lib e o arquivo h, muitas vezes por um preço ;) 

 

E vai guardar os arquivos C com cuidado porque serão a única maneira de manter a biblioteca.

 

Eis um roteiro passo a passo de como criar uma usando um IDE: https://docs.microsoft.com/pt-br/cpp/build/walkthrough-creating-and-using-a-static-library-cpp?view=msvc-160

 

Pode ajudar a entender o uso

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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 comunidades 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

×
×
  • Criar novo...