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:
Pergunta
tsumaster
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 tsumasterLink 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.