vhbsouza 0 Denunciar post Postado Outubro 29, 2008 Oi... eu estou fazendo a leitura de uma array string e não quero que o programa reconheça o caracter (espaço) como uma string. O meu problema é esse: Não posso usar scanf pq a string pode ser composta de mais de um nome e o scanf reconhece o (espaço) como separador de string então no exemplo: sao paulo usando o scanf a string "sao" vai para a primeira variavel e "paulo" vai para a segunda variavel.... e quando eu uso gets ele resolve esse problema, mais ele passa a reconhecer (espaço) como uma string e então a armazena na variável. for (i=0;i<4;i++) { textcolor(4); textbackground(7); cprintf("\nLEIA O NOME DA CIDADE %d:\r\n=>",i+1); fflush(stdin); gets(cidades[i]); strupr(cidades[i]);//converte os caracteres para maiúsculo //Verifica se o número esta no vetor. for(j=i-1;j>=0;j--) if(strcmp(cidades[j],cidades[i])==0) { i--; j=-1; textcolor(66); textbackground(7); cprintf("\nESSE NOME JA ESTA NO VETOR, INSIRA NOVAMENTE.\r\n"); } } Alguém pode me ajudar? Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Outubro 29, 2008 Nao entendi muito bem oq você qr.. o usuario pode digitar espaco assim: Sao Pauloe na variavel você qr q armazene:SaoPaulo ow nd a ver.. explica melhor... []s Compartilhar este post Link para o post Compartilhar em outros sites
Kandrade 7 Denunciar post Postado Outubro 29, 2008 O esquema é ler a string com fgets, não use gets. Depois remova os espaços da string. Compartilhar este post Link para o post Compartilhar em outros sites
vhbsouza 0 Denunciar post Postado Outubro 29, 2008 Nao entendi muito bem oq você qr.. o usuario pode digitar espaco assim: Sao Pauloe na variavel você qr q armazene:SaoPaulo ow nd a ver.. explica melhor... []s ----------------------------\\------------------------------------\\-------------------------- o negócio é o seguinte... Quando eu vou fazer a leitura das strings tenho uma string array de 4 espaços, Eu digito Sao Pauloe o que acontece é que Sao vai para um dos espaços da arry e Paulo vai para outro dos espaços da array restando então 2 espaços para uma array de 4 espaços....ENTENDEU? sendo que o que eu queria era que a string SAO PAULOficasse em um único espaço na memória, restando então três espaços Esse problema não ocorre, mais o que acontece é o surgimento de outro problema que é o do (space) Pois quando eu vou fazer a leitura e não digito nada o GETS aceita como string esse "nada" ...Entende? Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Outubro 29, 2008 FHUDASHF juro q ainda naum entendi. tente assim vai: fgets(sVar, 255, stdin); sVar[strlen(sVar)-1] = '\0'; Compartilhar este post Link para o post Compartilhar em outros sites
José Enésio 4 Denunciar post Postado Outubro 30, 2008 Você pode fazer um loop, realizando o fgets, e comparando o que ele conseguiu com uma string em branco ou com um espaço. Se for diferente, aceita a string digitada e termina o loop. Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Novembro 1, 2008 #include <stdio.h> int main() { char V[20]; scanf("%[^\n]",&V); return 0; } Se você digitar "Sao Paulo" e der printf, vai ser impresso "Sao Paulo",armazenado em V somente. Compartilhar este post Link para o post Compartilhar em outros sites
vhbsouza 0 Denunciar post Postado Novembro 13, 2008 Eu consegui resolver este problema... Assim que eu entregar o Trabalho para o Professor eu posto aki a solução do problema.... Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Novembro 13, 2008 http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
vhbsouza 0 Denunciar post Postado Novembro 21, 2008 http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif O Quit? agora eu já posso postar o meu código.... Mais eu posto ele onde... aki neste tópico mesmo ... ow na seção se scripts prontos...?? Compartilhar este post Link para o post Compartilhar em outros sites
quitZAUMMM 18 Denunciar post Postado Novembro 21, 2008 c for um codigo legal para os outros aprenderem poste lah.. agora c for um programa simples, poste aki somente para registrar, pq vai q alguem tem a msm duvida.. []s Compartilhar este post Link para o post Compartilhar em outros sites