C - Erro chato - Loop Feliz

    Autor Mensagem
    Mr. Joe
    Veterano
    # mai/10 · Editado por: Mr. Joe


    Olá pessoal. :)

    Resolvi brincar com C um pouquinho.
    Enfim, pensei em fazer um simples loop, que faça uma contagem bem feliz.

    Mas ao compilar dá o erro "[Warning] passing arg 1 of `printf' makes pointer from integer without a cast "

    Segue o código feliz:

    #include <stdlib.h>
    #include <stdio.h>
    main(){
    int keep_loop = 1;
    int counter = 1;
    while(keep_loop == 1) {
    sleep(1000); // 1 seg
    printf(counter);
    counter ++;
    if(counter >= 10) {
    printf("\n Uau, chegamos aos dez segundos!");
    keep_loop = 0; // paramos o loop
    system("pause"); // aperte qualquer tecla p/ continuar
    }
    }
    }


    Quem tem a solução? ganha um biscoito imaginário :)

    Carlos_Souza_Jr
    Veterano
    # mai/10
    · votar


    ...

    printf("Contando...", counter);


    Acho que funfa

    Sephiro
    Veterano
    # mai/10
    · votar


    Substitui a linha printf(counter); por printf("%i", counter);

    Carlos_Souza_Jr
    Veterano
    # mai/10
    · votar


    Mr. Joe

    Ou faz o que o Sephiro falou. O printf exige uma string de controle pra funcionar, o resto dos argumentos ele vai imprimir na tela direitinho.

    Mr. Joe
    Veterano
    # mai/10
    · votar


    Carlos_Souza_Jr
    Botei isso e só aparece "Contando...". Parece que a variável ficou sem valor :S

    Sephiro
    Agora funfo. :)
    Programa ficou mó fófis. Conta certinho :)

    Mr. Joe
    Veterano
    # mai/10
    · votar


    mas aí... que que o "%i" realmente faz?

    ZakkWyldeEMG
    Veterano
    # mai/10
    · votar


    Mr. Joe

    O %i é um código de formatação para variáveis tipo int da função printf

    Sephiro
    Veterano
    # mai/10
    · votar


    Mr. Joe
    Quando você utiliza o printf e quer imprimir conteúdo de variável, é necessário utilizar o '%' acompanhado de um especificador de formato. Como no caso a variável era de valor inteiro, um especificador que você pode utilizar é o 'i' ou o 'd', daí o "%i". :]

    Mr. Joe
    Veterano
    # mai/10
    · votar


    Valeu as dicas pessoal. :)
    Aproveitem seus biscoitos imaginários! \o/

    Resolvido, tópico trancado.

      Você não pode enviar mensagens, pois este tópico está fechado.
       

      Tópicos relacionados a C - Erro chato - Loop Feliz