badu.ns 0 Denunciar post Postado Outubro 3, 2007 Bom pessoal, é o seguinte, eu fiz esse código aqui no C++: #include <iostream.h>#include <conio.h>#include <cstring.h>void main(){ char nome[100], i; //declaraçao das variaveis for(i=0; i<4; i++) { cout<<"\n Informe o nome da "<<i+1<<"ª loja: "; cin.getline(nome,100); //recebe nomes clrscr(); } for (i=0; i<4; i++) { cout<<nome<<endl<<"\n"; }} O que preciso q ele faça é o seguinte: Armazenar as palavras q eu digitar e depois mostrar elas na ordem correta. Armazenar ele atá armazena, mas na hora de mostrar ele mostra apenas a ultima palavra q eu digitei, e as anteriores ele simplismente "come elas", ou armazena por cima, aguma coisa... Tinha feito de outro jeito antes, que tava funcionando, mas do jeito q tinha feito antes, c eu tivesse 1000 nomes diferentes, teria q abrir 1000 variáveis diferentes no fonte, ai não dá :mellow: Bom, c alguém puder me ajudar, acho q deva ser fácil, mas não estou enxergando a solução no momento http://forum.imasters.com.br/public/style_emoticons/default/blush.gif E mais uma ciosa, eu estou usando o Turbo C++ 4.5, tem algum outro compilador melhor que ele e tipo, que não mude em mto as funções, pois já estou acostumando a usar esse arcaico turbo http://forum.imasters.com.br/public/style_emoticons/default/yay.gif Compartilhar este post Link para o post Compartilhar em outros sites
Kandrade 7 Denunciar post Postado Outubro 3, 2007 Armazenar ele atá armazena, mas na hora de mostrar ele mostra apenas a ultima palavra q eu digitei, e as anteriores ele simplismente "come elas", ou armazena por cima, aguma coisa...É exatamente isso que acontece.A cada leitura a variável nome é substituido pela última string lida.Para resolver voce precisa declar a quantidade de variáveis que deseja. Algo do tipo:char nome[10][100];Seriam 10 variáveis nome com 100 caracteres cada.mas isso é C em C++ voce pode usar String. Veja isso:http://en.wikipedia.org/wiki/String_(C++) Compartilhar este post Link para o post Compartilhar em outros sites
badu.ns 0 Denunciar post Postado Outubro 5, 2007 Então Kandrade, obrigado pela atenção mas receio que não ajudou mto :// Pelo q eu entendi no link q você me passou aquela forma de usar string serve mais para comparação, e na declaração que você me passou tb ela funciona para um tipo de matriz ou coisa parecida, até daria certo de armazenar as palavras numa matriz, mas eu naum sei como fazer, a função cin.getline não aceita qndo declaro char "nome[10][100]". Pra você me entender melhor, qndo compilado ele teria que funcionar igual a esse: #include <iostream.h>#include <conio.h>#include <cstring.h>void main(){ char nome1[20], nome2[20], nome3[20], nome4[20]; //declaraçao das variaveis cout<<"\n Informe o nome da 1º loja: "; cin.getline(nome1,20,'\n'); clrscr(); //recebe primeiro nome cout<<"\n Informe o nome da 2º loja: "; cin.getline(nome2,20,'\n'); clrscr(); //recebe segundo nome cout<<"\n Informe o nome da 3º loja: "; cin.getline(nome3,20,'\n'); clrscr(); //recebe terceiro nome cout<<"\n Informe o nome da 4º loja: "; cin.getline(nome4,20,'\n'); clrscr(); //recebe quarto nome cout<<"\nNomes das lojas:\n"; //mostra os nomes digitados cout<<nome1<<endl<<"\n"; cout<<nome2<<endl<<"\n"; cout<<nome3<<endl<<"\n"; cout<<nome4<<endl<<"\n";} Mas ai, no caso, eu tive que abrir uma variável pra cada nome armazenado, e não queria que ficasse assim, queria que armazenasse tudo em uma variável só, e depois mostrasse. Já pesquisei em tudo quanto é lugar e não achei de maneira nenhuma como eu posso fazer isso... E mais uma coisa, char* não pode ser tb http://forum.imasters.com.br/public/style_emoticons/default/upset.gif Compartilhar este post Link para o post Compartilhar em outros sites
ferbs 0 Denunciar post Postado Outubro 6, 2007 #include <iostream.h>struct Loja{ char nome[30];};int main(){ Loja loja[4]; int i; for(i=0; i<4; i++) { cout<<"Entre com o nome da " <<i+1 <<"a. loja: \n"; fflush(stdin); // limpa o buffer do teclado gets(loja[i].nome); } for(i=0; i<4; i++) { cout<<"\n\nNome da "<<i+1<<"a. loja: \n"; cout<<loja[i].nome; } cout<<endl; system("pause"); return 0; } Compartilhar este post Link para o post Compartilhar em outros sites
badu.ns 0 Denunciar post Postado Outubro 8, 2007 puxa vida, vlw ferbs, era isso mesmo q eu estava procurandoobrigado mesmo, tô te devendo uma ^^ Compartilhar este post Link para o post Compartilhar em outros sites
MATEUS_ROCHA 0 Denunciar post Postado Outubro 8, 2007 cara to precisando disso tbm....como q passo esse codigo para o turbo c++??? Compartilhar este post Link para o post Compartilhar em outros sites