Thawan Lucas Posted October 6, 2022 at 11:39 PM Share Posted October 6, 2022 at 11:39 PM (edited) ele não funciona mesmo com o armazenamento funcions.h salvo no meu computador #include <stdio.h> #include <stdlib.h> #include "functions.h" int main(){ //Chama a função imprimeOi(); //Retorno da Função return 0; } functions.h void imprimeOi(){ printf("Oi\n"); } Edited October 6, 2022 at 11:43 PM by Thawan Lucas Quote Link to comment Share on other sites More sharing options...
fredericopissarra Posted October 7, 2022 at 12:26 PM Share Posted October 7, 2022 at 12:26 PM Qual é a mensagem de erro que dá? (PS: Use formatação, o botão <> aqui em cima.) Anyway... Recomendo que você não use arquivos de cabeçalho (header files) para definir funções, apenas protótipos, macros e declarações de externs. Por exemplo: /* main.c */ #include "functions.h" int main( void ) { imprimeOi(); } Eis o header functions.h: /* functions.h */ #ifndef FUNCTIONS_H_ #define FUNCTIONS_H_ void imprimeOi(void); #endif E a função é definida em functions.c: /* functions.c */ #include <stdio.h> // Incluído para "bater" o protótipo com a definição abaixo. #include "functions.h" void imprimeOi( void ) { puts( "Oi" ); } Agora é só compilar: $ cc -o test main.c functions.c $ ./test Oi PS: Incluir arquivos com "" significa procurar apenas no diretório corrente. Incluir com <> significa procurar por todos os diretórios "padrão" do compilador, inclusive os informados pelas opções -I. No caso acima poderíamos substituir o #include "functions.h" por #include <functions.h> mas teríamos que incluir a opção -I. (repare o ponto) na linha de comando do cc. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.