helljawz Postado Abril 1, 2009 Denunciar Share Postado Abril 1, 2009 Alguém sabe me explicar porque preciso usar dois "getc()"? Já me falaram pra não usar a função scanf(), mas o que eu deveria usar no lugar dela?Como vocês fariam?Grato#include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> int main(int argc, char** argv) { char opt; printf("1. Inserir\n"); printf("2. Consultar\n"); scanf("%c",opt); switch(opt){ case '1': inserir(); break; case '2': consultar(); break; } } inserir() { FILE *escrita; char nome[20]; char tel[15]; char line[35]; char q = 'y'; int i=0; if ((escrita = fopen("telefones.txt","w")) == NULL ) { perror("File"); exit(1); } while ( q != 'n' && q != 'N' ) { printf("Nome: "); scanf("%s",nome); while(nome[i]){ q = nome[i]; nome[i] = toupper(q); i++; } printf("Telefone: "); scanf("%s",tel); fprintf(escrita,"%s %s\n",nome,tel); getc(stdin); q = getc(stdin); } fclose(escrita); } consultar() { } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Thiago de Paula Beserra Postado Abril 1, 2009 Denunciar Share Postado Abril 1, 2009 Olá...Para variáveis do tipo Char use o comando gets(variavel), pois esse comando permite o uso de palavras com espaço, já o scanf() não te permite isto!Espero ter ajudado!falou^^ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Durub Postado Abril 1, 2009 Denunciar Share Postado Abril 1, 2009 O certo seria usar fgets. fgets é quase a mesma coisa que gets, só que mais seguro.Para receber da stream principal (stdin):#include <stdio.h> int main(void) { char string[64]; fgets(string, sizeof(string), stdin); printf("%s", string); return 0; }Note que fgets coloca o "\n" (new line/line feed) na string.Abraços. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
helljawz
Alguém sabe me explicar porque preciso usar dois "getc()"? Já me falaram pra não usar a função scanf(), mas o que eu deveria usar no lugar dela?
Como vocês fariam?
Grato
Link para o comentário
Compartilhar em outros sites
2 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.