+ Responder ao Tópico



  1. #1
    harlen
    Como sou novato, fico até com vergonha da pergunta... mas nao consegui resolver o meu problema....
    Bom vamos lá: Em turbo c 3.0 utilizo uma funcao mais ou menos assim:
    cadastro(){
    strutct cadastro
    {
    char nome[10]
    ...
    ...
    }clientes[5]
    for (i = 0; I < 5; i++)
    {
    printf("Nome: ");
    gets(clientes[i].nome);
    ...
    }
    ...}

    Ja em linux, utilizando o mesmo esquema, com gets não funciona, e aparece o seguinte erro quando da compilacao:
    /tmp/ccam6zQk.o(.text+0xef): In function `cadastro':
    : warning: the `gets' function is dangerous and should not be used.

    E utilizando o scanf("%s", ...), quando inserido um espaço em branco, ocorre um salto de linha (para o proximo campo).

    Como corrigir isto, pois ja li quase todo a man do get, scanf... e nao encontrei uma solução.

  2. Citação Postado originalmente por harlen
    : warning: the `gets' function is dangerous and should not be used.
    E utilizando o scanf("%s", ...), quando inserido um espaço em branco, ocorre um salto de linha (para o proximo campo).
    baum...o gcc da esse aviso pq realmente a funcao gets eh perigosa...pq vc pode ler mais coisa do que pode armazenar..por isso q o recomendavel era voce usar o scanf....eu ainda nao intendi mto bem qual eh o problema...mas tenta usar o fgets

    Código :
    fgets(buf,1024,stdin);



  3. #3
    veiga
    da uma olhada, isso ja foi discutido em outro tópico:
    https://under-linux.org/modules.php?...wtopic&t=23147

  4. a gets() é perigosa, porém a scanf() tb eh cheia de furos...

    usa assim:

    scanf("%[^\n]s",dados[i]);

    certo?



  5. #5
    c0deks
    pow vlw galera, eu ia fazer um post sobre isso agora....hehehehe.....jah resolvi.....






Tópicos Similares

  1. Respostas: 11
    Último Post: 09-11-2015, 11:31
  2. Respostas: 3
    Último Post: 24-08-2010, 19:28
  3. Compilar Squid ou usar apt-get ?
    Por pearljam no fórum Servidores de Rede
    Respostas: 1
    Último Post: 09-05-2009, 06:58
  4. Erro no Apt-get ou no RPM??? Ajudem por favor.
    Por lacierdias no fórum Servidores de Rede
    Respostas: 5
    Último Post: 20-02-2005, 11:11
  5. Respostas: 1
    Último Post: 20-08-2004, 08:48

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L