Uso da biblioteca conio.h no Linux [RESOLVIDO]

1. Uso da biblioteca conio.h no Linux [RESOLVIDO]

Leandro Cunha
Leandro_Cunha

(usa Debian)

Enviado em 03/11/2016 - 23:50h

Nas faculdades os nossos professores ensinam usar conio e gets no C como substituir eles no Linux ?
Para que o Code Blocks compile meu código?

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

struct dados
{
char nome[10];
char idade[10];
char formacao[10];
char contato[10];
char endereco[10];
};
main()
{
FILE *MeuArquivo;
struct dados d;
MeuArquivo = fopen("curriculo.html","w");
{
printf("Digite seu nome\n");
gets(d.nome);

fputs("<p>Nome:</p>",MeuArquivo);
fputs(d.nome,MeuArquivo);

printf("Digite sua idade\n");
gets(d.idade);

fputs("<p>Idade:</p>",MeuArquivo);
fputs(d.idade,MeuArquivo);

printf("Digite sua formacao");
gets(d.formacao);

fputs("<p>Formacao:</p>",MeuArquivo);
fputs(d.formacao,MeuArquivo);

printf("Digite seu telefone de contato");
gets(d.contato);

fputs("<p>Contato:</p>",MeuArquivo);
fputs(d.contato,MeuArquivo);

printf("Digite seu endereco");
gets(d.endereco);

fputs("<p>Endereco:</p>",MeuArquivo);
fputs(d.endereco,MeuArquivo);
}
fclose(MeuArquivo);

system("pause");
}



  


2. MELHOR RESPOSTA

Paulo
paulo1205

(usa Ubuntu)

Enviado em 04/11/2016 - 10:57h

Leandro_Cunha escreveu:

Nas faculdades os nossos professores ensinam usar conio e gets no C como substituir eles no Linux ?


Acho curioso que se perca tempo com coisas obsoletas há quase duas décadas e com firulas decorativas num curso introdutório de programação.

Com relação a gets(), a resposta é fácil: essa função deixou de existir na biblioteca do C, logo ela não é uma opção nem mesmo fora do contexto do Linux. Com vistas a portabilidade máxima, deve-se usar fgets(), e fim de papo. Se, no entanto, você estiver programando exclusivamente no mundo UNIX (desde que não seja com uma implementação muito antiga), uma opção é usar getline(), que foi padronizada pelo POSIX.

Quanto a usar ConIO, o melhor é evitar completamente, se possível, especialmente em projetos novos. Mesmo no mundo Windows, ConIO é uma maneira obsoleta e subótima de trabalhar.

Existem implementações de Curses para DOS e Windows, tanto em modo console quanto gráfico. Procure ler sobre PDCurses (http://pdcurses.sourceforge.net/) e sua variante no Project Pluto (http://www.projectpluto.com/win32a.htm).

3. Re: Uso da biblioteca conio.h no Linux [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 04/11/2016 - 01:16h

https://www.vivaolinux.com.br/artigo/Conio.h-para-Linux

----------------------------------------------------------------------------------------------------------------
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



4. Re: Uso da biblioteca conio.h no Linux [RESOLVIDO]

Leandro Cunha
Leandro_Cunha

(usa Debian)

Enviado em 04/11/2016 - 01:39h

listeiro_037 escreveu:

https://www.vivaolinux.com.br/artigo/Conio.h-para-Linux

----------------------------------------------------------------------------------------------------------------
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


Eu li este artigo aqui no VOL.


5. Re: Uso da biblioteca conio.h no Linux [RESOLVIDO]

Leandro Cunha
Leandro_Cunha

(usa Debian)

Enviado em 05/11/2016 - 21:53h

paulo1205 escreveu:

Leandro_Cunha escreveu:

Nas faculdades os nossos professores ensinam usar conio e gets no C como substituir eles no Linux ?


Acho curioso que se perca tempo com coisas obsoletas há quase duas décadas e com firulas decorativas num curso introdutório de programação.

Com relação a gets(), a resposta é fácil: essa função deixou de existir na biblioteca do C, logo ela não é uma opção nem mesmo fora do contexto do Linux. Com vistas a portabilidade máxima, deve-se usar fgets(), e fim de papo. Se, no entanto, você estiver programando exclusivamente no mundo UNIX (desde que não seja com uma implementação muito antiga), uma opção é usar getline(), que foi padronizada pelo POSIX.

Quanto a usar ConIO, o melhor é evitar completamente, se possível, especialmente em projetos novos. Mesmo no mundo Windows, ConIO é uma maneira obsoleta e subótima de trabalhar.

Existem implementações de Curses para DOS e Windows, tanto em modo console quanto gráfico. Procure ler sobre PDCurses (http://pdcurses.sourceforge.net/) e sua variante no Project Pluto (http://www.projectpluto.com/win32a.htm).



Obrigado pelas informações!







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts