Estou tendo problema na leitura dos valores do meu código. Primeiro eu leio 5 inteiros, depois uma matriz de caracteres, um vetor de inteiros e por fim mais uma matriz de caracteres. Aparentemente o programa não está lendo o vetor de inteiros, mas provavelmente um \n ou alguma coisa assim no buffer de entrada.
A minha suposição está correta? Como posso limpar o buffer de forma que ele leia o vetor? Já tentei de varias maneiras, mas nada deu certo.
#include<stdio.h>int main(){int nPosicoes, maxCaixas;int nProgramas, maxComandos;int nExecucoes;int programaNumero [60];char programa [9][61];char posicao [10][11];int i;
scanf("%d",&nPosicoes);
scanf("%d",&maxCaixas);
scanf("%d",&nProgramas);
scanf("%d",&maxComandos);
scanf("%d",&nExecucoes);for(i =0; i < maxCaixas; i++){
scanf("%s", posicao[i]);}for(i =0; i < nExecucoes; i++){
scanf("%d",&programaNumero[i]);}for(i =0; i < nProgramas; i++){
scanf("%s", programa[i]);}
Não sei se isso serve de alguma coisa, mas programo em linux.
Utilizamos cookies e tecnologias semelhantes de acordo com a nossa Política de Privacidade, e ao continuar navegando, você concorda com estas condições.
Pergunta
gabrieldestro
Olá a todos,
Estou tendo problema na leitura dos valores do meu código. Primeiro eu leio 5 inteiros, depois uma matriz de caracteres, um vetor de inteiros e por fim mais uma matriz de caracteres. Aparentemente o programa não está lendo o vetor de inteiros, mas provavelmente um \n ou alguma coisa assim no buffer de entrada.
A minha suposição está correta? Como posso limpar o buffer de forma que ele leia o vetor? Já tentei de varias maneiras, mas nada deu certo.
Não sei se isso serve de alguma coisa, mas programo em linux.
obrigado.
Link para o comentário
Compartilhar em outros sites
4 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.