Por Curiosidade de saber como eu posso definir um Vetor que receba um numero indeterminado de elementos, para isso eu defini o seguinte teste: O usuario escreve uma frase qualquer na tela, e em seguida, a frase digitada retorna na tela, segue o codigo:
#include <stdio.h>
#include <stdlib.h>
char ler_fr(char f[])
{
int i=0, n_c=1;
while (i<n_c)
for (i=0; i<n_c; i++)
{
fflush (stdin);
scanf ("%c", &f[i]);
n_c++;
if (f[i] == '\n')
i ++;
}
}
main ()
{
char frase[1], fr;
puts ("Digite uma frase ----->");
ler_fr (frase);
puts ("");
puts ("A frase digitada foi-->");
puts (frase);
}
Quando eu executo no Debian (Sistema que usei pra escrever isso), ocorre que o programa executa normalmente ate sete caracteres, depois disso o codigo continua funcionando e me retorna exatamente o que eu quero, mas aparece uma mensagem de falha de segmentação.
Quando executo no Windows, preciso teclar <ENTER> duas vezes para terminar a entrada da frase eno final é exibido somente o primeiro caractere.
Por que isso acontece? E como eu posso resolver isso?
Pergunta
Gnomo Verde
Me ajudem a resolver esse problema...
Por Curiosidade de saber como eu posso definir um Vetor que receba um numero indeterminado de elementos, para isso eu defini o seguinte teste: O usuario escreve uma frase qualquer na tela, e em seguida, a frase digitada retorna na tela, segue o codigo:
Quando eu executo no Debian (Sistema que usei pra escrever isso), ocorre que o programa executa normalmente ate sete caracteres, depois disso o codigo continua funcionando e me retorna exatamente o que eu quero, mas aparece uma mensagem de falha de segmentação.
Quando executo no Windows, preciso teclar <ENTER> duas vezes para terminar a entrada da frase eno final é exibido somente o primeiro caractere.
Por que isso acontece? E como eu posso resolver isso?
Link para o comentário
Compartilhar em outros sites
0 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.