Fpslevelup Postado Março 14, 2015 Denunciar Share Postado Março 14, 2015 #include <stdio.h> #include <stdlib.h> char nome(void),idade(void), cor(void) { printf("Bem vindo /n"); printf("Formulario /n"); //inicio formulario printf("Qual é o seu nome: /n"); //name scanf("%d /n", &nome); //teclado printf("Quantos anos voce tem: /n"); //anos scanf("%d /n", &idade); //teclado printf("Qual a sua cor favorita: /n"); //cor scanf("%d /n", &cor); //teclado printf("aki: /n",&nome, &idade, &cor); // formulario return 0; } int main() { return 0; system ("pause"); } MAIS APARARECEU ISTO NO FINAL -------------- Build: Debug in formulariodiadia (compiler: Copy of Borland C++ Compiler (5.5, 5.82))--------------- ilink32.exe -q -ap -v -LC:\Borland\BCC55\lib -LC:\Borland\BCC55\lib\psdk c0x32 obj\Debug\main.obj,bin\Debug\formulariodiadia.exe,,cw32mt.lib import32.lib,, Error: Unresolved external '_idade' referenced from C:\DOCUMENTS AND SETTINGS\JORDAN\DESKTOP\PROGRAMAS\FORMULARIODIADIA\OBJ\DEBUG\MAIN.OBJ Error: Unresolved external '_nome' referenced from C:\DOCUMENTS AND SETTINGS\JORDAN\DESKTOP\PROGRAMAS\FORMULARIODIADIA\OBJ\DEBUG\MAIN.OBJ Process terminated with status 2 (0 minute(s), 0 second(s)) 0 error(s), 0 warning(s) (0 minute(s), 0 second(s)) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Felipe222 Postado Março 16, 2015 Denunciar Share Postado Março 16, 2015 Olá ! Sou iniciante em C por isso não acho que vou ser muito util, mas tentei fazer algumas altereções no seu código, que funcionam de forma parcial no meu computador! #include <stdio.h> #include <stdlib.h> char nome; int idade; char cor; int main() { printf("Bem vindo \n"); printf("Qual é o seu nome: \n"); scanf("%s", &nome); printf("Quantos anos voce tem: \n"); scanf("%d", &idade); printf("Qual a sua cor favorita: \n"); scanf("%s", &cor); printf("Você Digitou: %s, %d, %s",&nome, &idade, &cor); return(0); } Bom, ate aqui o código funcionou quase que perfeitamente se nõo fosse o fato que ao exibir os valores informados pelo usuario eles venham de forma incorreta: Ex: nome= marcos, idade= 25, cor= verde resultado: erde 134520876 verde Se alguém souber a solução ou o codigo executar em sistema igual ou diferente como windows, ficaria feliz em saber! Ubuntu 14.04 GNU gcc 4.9.1 ? Codeblocks 13.12 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Felipe222 Postado Março 16, 2015 Denunciar Share Postado Março 16, 2015 Olá! Acho não sei se interessa a mais alguém mas acho que consegui fazer o codigo, foi pura falta de atenção na declaração de char ! ! ! #include <stdio.h> #include <stdlib.h> char nome[10]; int idade; char cor[10]; int main() { printf("Bem vindo \n"); printf("Qual é o seu nome: \n"); scanf("%s", &nome); printf("Quantos anos voce tem: \n"); scanf("%d", &idade); printf("Qual a sua cor favorita: \n"); scanf("%s", &cor); printf("Seu nome é %s,você tem %d de idade e sua cor preferida é %s ! ! !",&nome, idade, &cor); return(0); } Mas, o problema do valor da idade permanece se eu usar &idade ! ! ! Porquê? Obrigado e ate mais ! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 EduardoVSF Postado Março 16, 2015 Denunciar Share Postado Março 16, 2015 o codigo funciona, qual o tema? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Felipe222 Postado Março 16, 2015 Denunciar Share Postado Março 16, 2015 Olá! Se eu entendia bem EduardoVSF nenhum, só estava meio curioso para saber o porquê do codigo funcionar sem &idade, sendo que já vi outros codigos similares usando & em uma situação bem similar e funcionarem muito bem, e gostaria de saber se isto pode causar algum problema futuro ou ate mesmo se é algum problema com o meu sistema ! ! ! De qualquer forma sou iniciante e auto-didata em C e ainda tenho um longo caminho pela frente! Obrigado ! ! ! A proposito Fpslevelup, acho que seria bom você trocar de compilador e talvez ate mesmo de IDE, quando eu comecei a estudar C eu sempre tinha problemas com esse compilador, se eu não me engano acho ate mesmo que o mesmo já não tem mais um grande suporte atual aos desenvolvedores. Eu lhe aconselho a usar a IDE Codeblocks e o Compilador GNU gcc, eles são mais atuais com versões sendo lançadas periodicamente, alem de serem OpenSource e gratuitas, alem de existem versões tanto para o Windows quanto para o Linux! Espero ter ajudado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Felipe222 Postado Março 16, 2015 Denunciar Share Postado Março 16, 2015 Olá! Acho que entendi o problema causado pelo uso de &idade no ultimo printf. Ainda não tive tempo de pegar em meus livros para ver se deixei algo para tras, mas cheguei a esta conclusão: O motivo de idade no ultimo printf não precisar de & é o de que o & é usado neste e em outros casos para fazer referência (apontar) para o valor das variaveis char, cuja sintaxe neste caso é proxima a de um ponteiro, pois, nesta situação os vetores e os ponteiros tem uma sintaxe muito proxima, enquanto que idade faz referência ao valor inteiro digitado pelo usuario sendo este o motivo de o mesmo não precisar usar & para apontar para o valor da variavel idade, sendo tambem este o motivo de o valor idade aparecer errado quando usado o &, cujo apontamento aponta para uma parte inexistente ou sendo usada por outro programa! Se possivel me corrijam, se eu estiver errado ou esqueci de mencionar algo mais! Obrigado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Fpslevelup
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.