1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

C - gets() em mac osx

Discussão em 'Programação' iniciada por JoaoRamalho, 13 de Dezembro de 2007. (Respostas: 8; Visualizações: 1443)

  1. JoaoRamalho

    JoaoRamalho Power Member

    boas

    instalei o xcode no macbook e agora kuando tava a programar utilizei a funcao fgets() em altenatica á fscanf k so le uma palavra, mas agora tenho um problema, kuando vou a correr o programa aparece o seguinte warning:

    warning: this program uses gets(), which is unsafe.

    compilei com o comando

    gcc -g -ansi -Wall -pedantic prog.c -o prog

    ja andei no google e encontrei k se usasse o -Wall o warning ja n aparecia, mas continua a aparecer

    ajuda sff

    cumps
     
  2. Usa fgets em vez de gets.
     
  3. Idiroft

    Idiroft I'm cool cuz I Fold

    Exactamente, usa o fgets. Tens é de ter em conta que vais ter de meter mais 1 parâmetro na função que é o stdin (em vez de um ficheiro, a função lê do standard input).
     
  4. Tyran

    Tyran Power Member

    Tens de meter mais 2, porque tens de definir também o número de caracteres a serem lidos.
    exemplo: fgets ( variavel, 99, stdin)
    cumpzz
     
  5. MadOnion

    MadOnion Folding Member

    Eis outra alternativa:
    Código:
    char str[40];
    scanf("%[^\n]", str);
    
    Cumps :)
     
  6. JoaoRamalho

    JoaoRamalho Power Member

    podes explicar-me esse scanf sff??
     
  7. Baderous

    Baderous Banido

  8. inicolai

    inicolai Power Member

    Estou com o mesmo problema e não estou a conseguir soluciona-lo!
     
  9. anjo2

    anjo2 Power Member

    Qual problema? É C ou C++?

    O ideal é colocares aqui o código, e indicar o erro que te da.
     

Partilhar esta Página