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

Duvida C++

Discussão em 'Programação' iniciada por owny, 14 de Novembro de 2008. (Respostas: 17; Visualizações: 1083)

  1. owny

    owny Power Member

    boas

    Estou a iniciar-me em C++ e tenho aqui uma pequena duvida.

    Comecei a desenvolver aplicações modo consola (Win32 Console) e cada vez que chamo a consola com a aplicação e ela me vai apresentar valores aparece a janela e desaparece logo.
    Qual é o comando que faz com que a consola não desapareça? Um STOP ou kker coisa do género.

    Cumps,
     
  2. OubeLa

    OubeLa Power Member

    Experimenta um getchar(); antes do return 0;
     
  3. Valdijiu

    Valdijiu Power Member

    em C, um scanf(); resolvia o problema, nao sei se é igual a C++.
    xD
     
  4. sapropel

    sapropel Power Member

    std::cin.get(); antes do return
     
  5. owny

    owny Power Member

    O meu código é este:
    Podem-me explicar como faço a especie de STOP?

    Exprimentei o scanf(); e não deu e o return 0 tb não.
    alvez esteja a colocar no local errado a instrução.
     
  6. Granadafeup

    Granadafeup Power Member

    Já experimentas-t estes comandos?

    ou std::cin.ignore(); ?


    Edit: para usares o objecto cin tens de usar a biblioteca iostream
     
  7. zgruli

    zgruli Power Member

    Isso é C, não é C++.

    Se estás a compilar com o Visual Studio, em vez de fazer F5 faz ctrl+F5, ou seja, em vez de fazer "start debugging" faz "start without debugging". Desta forma não precisas de usar o getchar.
     
    Última edição: 14 de Novembro de 2008
  8. kaxias

    kaxias Power Member

    depende do ide q estas a usar.. se for o visual studio mete um break point na ultima linha.

    [​IMG]
     
  9. owny

    owny Power Member

    Obrigado pelas dicas.

    não é C++? Podes explicar melhor?

    SIm a cena do CTRL + F5 é o que costumo usar, mas quando faço o release da aplicação ela no fim quando apresenta o resultado desaparece logo.

    Vou testar com o getchar();

    Estou a usar Visual Studio 2008

    Thanks
     
    Última edição: 14 de Novembro de 2008
  10. owny

    owny Power Member

    Nem com getchar(); nem com return;

    :\
     
  11. OubeLa

    OubeLa Power Member

    Isso não é C++ porque estas a usar a sintaxe de C.

    Usa system("pause") antes do return 0; (isto só funciona em Windows e é desaconselhado). De qualquer forma, se estiveres a usar o ctrl+F5 a janela não devia desaparecer.

    Depois, usar uma função main do tipo void é desaconselhado. Esta deve retornar um int.
     
  12. zgruli

    zgruli Power Member

    Como o sir_atmc disse, não é C++ porqueestás a usar sintaxe de C. :)
    C++ nasceu a partir de C mas é muito diferente quer em "filosofia" quer em sintaxe.

    Para teres uma ideia aqui fica o teu programa em C e C++:
    C
    C++
     
    Última edição: 14 de Novembro de 2008
  13. metRo_

    metRo_ Power Member

    Caso ainda não saibas esse problema só acontece quando fazes isso aí, neste caso no visual. O que eu quero dizer é que se abrires a linhas de amando e executares aqui a tua aplicação ela não vai desaparecer...
     
  14. zgruli

    zgruli Power Member

    Ah, já sei o que se passa com os getchar.
    Deves ter o ficheiro com a extensão .cpp. Altera para .c no "solution explorer", aquela área à esquerda ou à direita onde podes ver as pastas e os ficheiros que compõem o projecto.
     
  15. owny

    owny Power Member

    ya está em .CPP

    Já agora qual é a diferença?

    Cumps,
     
  16. zgruli

    zgruli Power Member

    É que para programar em C tens de usar .c, .cpp (deve representar C Plus Plus, imagino) é para C++.
    Se colocares C num .cpp o compilador também "come" o código, mas fica com uns "bugs", como por exemplo esse que tiveste.
     
  17. armagedalbeebop

    armagedalbeebop Power Member

    não é por nada,mas 60% dos topicos criados nesta zona são todos sobre este "problema"
     
  18. owny

    owny Power Member

    até faz sentido o que disses-te zgruli.

    Obrigado ;)
     

Partilhar esta Página