Jump to content

erro no linker com o conio.h


thranduil
 Share

Recommended Posts

olá a todos 😛

l

quando tento compilar um programa que estou a fazer no qual aparece a função clrscr() o linker diz-me sempre que esta função não existe. tenho a certeza que tenho o conio incluido mas não entendo porque é que o linker dá o erro :S

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

int menu()
{
int opcao;
clrscr();

do
{
  printf("Menu\n\n");
  printf("1. Procurar aluno\n");
  printf("2. Adicionar aluno\n\n");
  printf("Opção: "); scanf(" %i", &opcao);
}
while(opcao>3 && opcao<0);
return opcao;
}

main()
{
int opcao;
char nome[20];

opcao = menu();
if(opcao==1)
{
  printf("\nInsira o nome do aluno: "); gets(nome);
}
else
{
  printf("\nInsira o nome do novo aluno: "); gets(nome);
}

system("PAUSE");
}

o programa está longe de estar acabado 😛 estou a faze-lo porque à muito que não mexo no c e comecei a ver agora a parte dos ficheiros exteriores ^^

se virem algum erro também agradecia que me iformassem.

thank you ^^

Link to comment
Share on other sites

PS: A tua condição while esta errada: while(opcao<1 || opcao>2);

hmm não? para isso teria que ser opcao<=1 || opcao >= 2 acho eu porque se fizeres <1 ele não conta com o um e conta a partir do número anterior. acho eu :S pelo menos estava convencido que sim :S

quanto ao resto, obrigado pela ajuda 😛

Link to comment
Share on other sites

o ciclo while está correcto excepto a parte da condição é while opcao>3 || opcao <1 ..

porque se nao estás a dizer que tem que ser maior que 3 e menor que 1 e isso nao tem logica .. repara se eu puser 3 nunca vai ser maior que 3 e menor que 1 ao mesmo tempo de resto está certo.

e já agora porque criaste outra variavel chamada opçao e nao usaste tipo if (menu(2)) em vez de if(opcao==1)?

Link to comment
Share on other sites

guys.. continuo com o problema do conio.h.....

sempre que compilo o programa ele diz-me:

C:\DOCUME~1\JOO~1\DEFINI~1\Temp\ccSidaaa.o(.text+0x4b):alunos.c: undefined reference to `clrscr'

e aqui o include está

#include <conio.h>

o problema é que eu já tentei da outra maneira (com as aspas) mas nao dá. e a biblioteca vem com o devcpp e nao fui eu que a fiz :S

anyone can help me plz?

Link to comment
Share on other sites

Só consegui limpar o ecrã utilizando o compilador Borland C++ v3.1 (Bem velhinho) porque o Dev C++ dava erro!

Incrivel... E eu k adorava o Dev C++  :wallbash:

Pode é ser do conio.h do Dev C++ não suportar o clrscr();  não sei  😉

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

main()
{
clrscr();
printf("\t\t\n Limpei o ecra mas em Borland C++ v3.1 \n\n\n");
printf("Escreva sair segido de enter para bazar \n");
scanf("%d");
}

PEACE  :smoke:

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.