Ir ao conteúdo
  • Cadastre-se
Mateus Andrade Ferreira

Biblioteca conio.h em compiladores online

Recommended Posts

Boa tarde galera, costumo usar o dev c++ para dar aula, mas ele é meio *****, deixa passar muitos erros de sintaxe e acaba encerranro a execução do programa sem indicar onde está o erro. Por isso estou começando a usar compiladores on line, pois eles são mais precisos em detalhar os erros dos códigos. O problema é que os dois melhores compiladores que eu encontrei não reconhecem a biblioteca conio.h, alguém sabe o porque? Abaixo os links dos compiladores.

 

Abraço.

 

http://www.tutorialspoint.com/compile_cpp_online.php

 

http://cpp.sh/

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dev C/C++ não é compílador, é IDE. Já começa por aí. A IDE só exibe os erros que o compilador consegue capturar. O conjunto de ferramentas de desenvolvimento que ela utiliza é o MingW, que é um port p/ windows do GCC + as bibliotecas específicas do windows. Até onde eu sei, é uma IDE bem antiga1.

 

Conio.h é um cabeçalho da época do DOS. Acredito que a maioria dos compiladores online roda em Linux, ou seja, não vai ter conio.h mesmo. No teu primeiro link, é só dar uname -a na janela do terminal que você vai ver 'Linux' listado. Além de ser coisa do DOS2, é p/ terminal, então seria necessário ter uma implementação que funcionasse nos terminais disponibilizados no Linux.

 

Se eu fosse você simplesmente parava de usar esse cabeçalho e me focava no ISO C, que já é bem complexo p/ entender, mas responde com mais detalhes várias dúvidas, principalmente quanto ao tempo de vida das variáveis e escopo. A aplicação mais comum da conio.h é dar cor aos caracteres. Isso acaba tirando o foco dos alunos da lógica p/ frufrus de terminal3. Uma outra coisa que o pessoal utiliza da conio.h é a função getch(), porque o terminal no Windows fecha e ninguém vê o resultado ou porque o programa passa direto por determinados scanf. Ao invés de usar isso, leia as entradas com fgets ou scanf("%d%*c"), coisas que funcionam em outras plataformas por estarem especificados no ISO C.

 

Se quiser usar outro compilador localmente, dentro da IDE, no lugar do MingW: http://llvm.org/releases/download.html

1- Por que não usa o eclipse?
2- Se você está num Windows, por que não usar a WINAPI ao invés da conio.h? https://msdn.microsoft.com/en-us/library/windows/desktop/ff818516(v=vs.85).aspx

3- Se é p/ fazer programa bonitinho, com interface, no Windows, é melhor utilizar SDKs com suporte a interface gráfica.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia,

 

Muito obrigado pela sua resposta. Sou engenheiro eletricista e não tenho muito conhecimento em programação, uso mais o matlab. Atualmente sou professor de disciplinas técnicas em um curso de nível médio, e como dou aula de programação para alunos do 1º ano estou mais preocupado em ensinar a lógica do que a linguagem em si, até porque a carga horária dessa disciplina é muito pequena. Inclusive comecei o curso ensinado a eles o portugol com o visualg, que é um tipo de tradução da linguagem pascal.

 

Gostaria de saber se você pode me sugerir referências bibliográficas para o estudo da programação, principalmente a linguagem C/C++, de preferência livros em português e com linguagem mais tranquila, para alguém que não é programador.

 

Desde já agradeço. 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Material em português é tenso, mas o único que conheço (português nativo mesmo, com autor brasileiro) é esse: 

https://www.goodreads.com/book/show/25128837-elementos-de-programa-o-em-c

Tem umas partes de arquitetura de computadores que você pode tranquilamente pular, mas ele dá uma ênfase maior no ISO C justamente por questões de portabilidade mínima do código.

O curso te obriga a dar a matéria em C? Se não, por que não tenta ensinar lógica com Python? Apesar de ter alguns detalhes sórdidos (toda linguagem tem os seus), é bem mais rápido p/ galera pegar (não tem que ficar se preocupando a todo momento com declarações extern, const, variável automática, essas tralhas) , tem bem mais coisas na biblioteca padrão e as bibliotecas de terceiros são muito mais fáceis de se instalar caso você precise de algo específico p/ área.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já ouvi falar de Python, está sendo ensinado em muitas faculdades, o problema é que no curso em que trabalho os alunos aprendem C para programar microcontroladores no 3º ano, então existe essa obrigação de ser tudo em C.

 

Muito obrigado pela ajuda.

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

×