Ir para conteúdo
Fórum Script Brasil
  • 0

Problema simples com vetores e string


tsumaster

Pergunta

Olá pessoas.

Iniciei meus estudos em C há pouco tempo e não estou conseguindo fazer esse codigo funcionar:

#include<stdio.h>
char *str;

int main()
{
	//VARIAVEIS
	char chara;
	int cont;
	str = (char*)malloc(500); 
	for(cont = 0; cont < 500; cont++)
	{
		str[cont] = '\0';
	}
	for(cont = 0; cont < 4; cont++)
	{
		scanf("%c", &chara);
		if (chara != '\n')
		{
			str[cont] = chara;
			//printf("%c", str[cont]);
		}
	}
	printf("%s", str);
}

O objetivo é inserir um numero n de caracteres no vetor str(no caso, 3 caracteres) e imprimir no final o vetor completo.

Estou usando como entrada os valores: 2, 5. No meio deles acaba entrando um '\n' que seria o enter que eu aperto para ativar o scanf.

Entretanto, o vetor resultante é apenas um "5". Alguém tem alguma ideia?

Estou usando DevC++ 5.8.2 Portable.

EDIT:

Desculpem, gastei a tarde toda pensando nesse codigo e, assim que postei aqui, olhei para ele e adicionei cont-- no if.... funcionou. Mas... Agora o erro está em começar sem caractere nenhum. Exemplo de entrada:

\n

5

2

3

Retorna um único caractere

Editado por tsumaster
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...