thranduil Posted December 25, 2005 at 06:14 PM Report #9663 Posted December 25, 2005 at 06:14 PM 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 ^^
jarsantos Posted December 25, 2005 at 08:34 PM Report #9676 Posted December 25, 2005 at 08:34 PM Para se incluir headers feitos pelo utilizador a forma de se fazer isso é: #include "header.h" no teu caso é: #include <stdlib.h> #include "conio.h" PS: A tua condição while esta errada: while(opcao<1 || opcao>2);
thranduil Posted December 25, 2005 at 11:14 PM Author Report #9703 Posted December 25, 2005 at 11:14 PM 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 😛
deathseeker25 Posted December 25, 2005 at 11:41 PM Report #9705 Posted December 25, 2005 at 11:41 PM thranduil vais ter de explicar esse ciclo while porque não estou a conseguir compreender....
Gurzi Posted December 25, 2005 at 11:43 PM Report #9706 Posted December 25, 2005 at 11:43 PM 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)?
thranduil Posted December 26, 2005 at 12:48 AM Author Report #9710 Posted December 26, 2005 at 12:48 AM pois pois desculpem-me 😛 ah isso foi para fazer um teste ^^ obrigado a todos.
Gurzi Posted December 26, 2005 at 12:49 AM Report #9711 Posted December 26, 2005 at 12:49 AM sempre ás ordens 😛
jarsantos Posted December 26, 2005 at 11:07 AM Report #9732 Posted December 26, 2005 at 11:07 AM o ciclo while supostamente é: enquanto for diferente de 1 ou 2 continua a mostrar o menu. Quando for igual a 1 ou 2 sai do ciclo. ora para ter estas condiçoes tem 2 formas: while(opcao != 1 && opcao !=2) ou entao: while(opcao < 1 || opcao > 2)
thranduil Posted December 26, 2005 at 06:37 PM Author Report #9783 Posted December 26, 2005 at 06:37 PM guys.. continuo com o problema do conio.h..... sempre que compilo o programa ele diz-me: Citação 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?
Bruno Posted December 26, 2005 at 07:38 PM Report #9798 Posted December 26, 2005 at 07:38 PM Porque n usas o system("CLEAR"); ou system("CLS"); dependente do SO que usas!?
Gurzi Posted December 26, 2005 at 07:52 PM Report #9806 Posted December 26, 2005 at 07:52 PM tens a certesa que o clrscr pertence ao conio ? ia jurar que nao
will09 Posted January 9, 2006 at 11:59 PM Report #11403 Posted January 9, 2006 at 11:59 PM 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++ 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:
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now