Ir ao conteúdo
  • Cadastre-se

Linguagem C


Cassiano BH

Posts recomendados

Olá galera, comecei a estudar C e entendi grande parte das explicações do livro(sintaxe,funções, alguns comandos) porém garrei na parte de verificação de funcionamento do meu programa. Estou com dificuldades de entender como trabalhar com as APIs, tipo quando faço um programa besta como o "hello world" a tela do DOS abre e desaparece ultra rápido, deste jeito fica difícil aprender. Por exemplo, vou testar um programa que soma dois números, aparece a tela do DOS e quando digito o número no teclado a tela também some, instalei o C++builder 6 achei bem melhor mas não quero pular a didádica da coisa entende, alguma sugestão?

Abraços

Cassiano

Link para o comentário
Compartilhar em outros sites

Assim

O problema é que o programa termina e fecha a janela. Daí não dá pra ver nada mesmo :P

pra evitar isso coloque no fim do programa

system("pause");

ou

getch();

Deve funcionar (talvez precise incluir o .h correspondente)

O C Builder realmente é bom pra aprender, inclusive fazer janelinhas, etc! :joia:

Link para o comentário
Compartilhar em outros sites

Postado Originalmente por Cassiano BH@08 nov 2004, 19:52

Valeu Tabgal, sabia que responderia, você acha que seria melhor eu ir direto para o C++builder? Minha intenção é criar programas para ser usado em eletrônica(interface,controle,aquisição de dados) valeu cara!

Olha, é assim...

Se o seu sistema é "inteligente" o suficiente pra ter um microcontrolador, porta serial, etc, e você só for mandar poucos comandos pra ele (via serial, por exemplo) então eu recomendo sim o C+ Builder.

Agora, se o seu sistema é "burro" e precisa que o computador faça o trabalho pesado (por exemplo) então eu recomendaria que você faça um programa no DOS mesmo puro, sem nada mais rodando.

Pra isso recomendo o DJGPP.

Não que não dê pra acessar, por exemplo, a porta paralela no Windows (tem o famoso PortTalk que usa pra fazer isso) Mas se o sistema precisa se "de tempo real" é melhor fazer no DOS puro...

Mas de qualquer jeito aprenda o C++ Builder, é bem legal, e pra fazer programas Windows é bem fácil...

Link para o comentário
Compartilhar em outros sites

Postado Originalmente por Cassiano BH@09 nov 2004, 09:37

Certo, só mais uma curiosidade, suponha que quero construir interfaces que funcione no winxp. Estes programas escritos no DOS vão funcionar? Onde existe literaturas a respeito?

valeu!

É assim...

Os programas em DOS (acesso a porta paralela, serial, por exemplo) NÃO funcionam no XP. O jeito de fazer é diferente (mesmo que usando o PorTalk fique parecido, precisa de uma recompilação)

Um site cheio de explicações comunicação serial/paralela/USB é o www.beyondlogic.org (que inclusive tem o PortTalk)

Pra se aprofundar melhor na parte Windows, realmente é meio complicado... Mas acredito que um livro de C++ Builder seja uma boa nesse começo de aprendizado.

Link para o comentário
Compartilhar em outros sites

Um livro que eu adoro, mesmo sendo um pouco antigo, é "Programming Windows 95" de Charles Petzold.

É ótimo para aprender e entender os fundamentos da programação para Windows, os exemplos são em C puro, usando a API, pelo que fica mais fácil, e não se amarra a um compilador em particular. Claro que é mais voltado para aqueles programas típicos de Windows, com janelinhas, caixas de diálogo e tudo mais.

Vem com um CD de exemplos, e o melhor, os exemplos FUNCIONAM !

:D

Elga

Link para o comentário
Compartilhar em outros sites

Postado Originalmente por Cassiano BH@09 nov 2004, 14:59

Valeu Tabgal e Elga, tenho um material sobre APIs em umas apostilas de assembler x86 será que ajudam?

Am...

Não muito. Isso provavelmente se refere a construção de APIs, não a sua utilização propriamente dita.

Mas talvez ensine sobre coisas útes como empilhamento de parâmetros, etc.

Ainda mais que a API Windows foi feita pra ser independente do computador na qual ele está rodando.

Link para o comentário
Compartilhar em outros sites

Aff!.. Olha o que está escrito no livro

"There are three prerequisites for using this book. First, you should be familiar with Windows 98 from a user?sperspective. You cannot hope to write applications for Windows without understanding its user interface. For thisreason, I suggest that you do your program development (as well as other work) on a Windows-based machine usingWindows applications.

Second, you should know C. If you don?t know C, Windows programming is probably not a good place to start. I recommend that you learn C in a character-mode environment such as that offered under the Windows 98 MS-DOS

Command Prompt window. Windows programming sometimes involves aspects of C that don?t show up much in character-mode programming; in those cases, I?ll devote some discussion to them. But for the most part, you should have a good working familiarity with the language, particularly with C structures and pointers. Some knowledge of the standard C run-time library is helpful but not required.

Third, you should have installed on your machine a 32-bit C compiler and development environment suitable for doing Windows programming. In this book, I?ll be assuming that you?re using Microsoft Visual C++ 6.0, which can be purchased separately or as a part of the Visual Studio 6.0 package."

Eu tenho o DEV-C++ serve? Outra coisa, os próprios exemplos dão erro :wacko: , mas mesmo assim não desistirei.

Link para o comentário
Compartilhar em outros sites

Todos os 3 servem! Tanto o DEV-CPP, o VIsual C++ e o C++ Builder.

Deixa eu explicar uma coisa pra você.

Quando o Windows foi criado (século passado :P ) a Microsoft optou por fornecer aos desenvolovedores de software uma interface C pura para eles desenvolverem os programas. (Isso é realmente uma escolha: por exemplo os MAC usam Object C e Pascal em seus programas)

C é bastante interessante para se fazer programas em "modo texto" (tanto em Windows, Linux, etc) pois, digamos assim, o fluxo do programa é bem direto. (Isso é o que se chama de Console Application)

Agora, pra você fazer um programa Windows (com janelas, tudo bonitinho) em C é meio complicado.

1 - Precisa escrever BASTANTE

2 - O código não é "direto" o bastante.

Vendo essa dificuldade, tanto a Microsoft quanto a Borland criaram um sistema em C++ para embrulhar essa dificuldade e tornar as coisas mais lógicas (já que programas usando janelas casam perfeitamente com a noção de Orientação a Objeto)

A Microsoft criou o MFC, a Borland usa o VCL (Visual Control Library se não me engano)

O DEV-CPP não tem nenhum sistema "nativo" mas você pode usar vários, como o GTK para Windows, o wxWidgets (muito bom esse sistema) e outros.

Então, esse livro que a Elga indicou com certeza se foca na programação WIndows em C. Recomendo que você leia esse livro e entenda vários conceitos importantes (looping de mensagem, o sistemas de mensagens Windows, etc), mas saiba que programar em Windows hoje é bem menos sofrido.

O que se faz normalmente é: usa-se as classes C++ pra programar e daí usa as funções C (elas sempre estão disponíveis) para aquelas coisas mais especiais...

Então, a hora que você for tentar os exemplo, precisa atentar para criar o projeto certo no programa. Por exemplo, no Visual C++, pra você criar um programa Windows "C" seleciona-se Windows Application. Para se usar MFC seleciona-se MFC Aplication (nos outros eu não me lembro)

Boa sorte!!

:joia:

Link para o comentário
Compartilhar em outros sites

Então, esse livro que a Elga indicou com certeza se foca na programação WIndows em C. Recomendo que você leia esse livro e entenda vários conceitos importantes (looping de mensagem, o sistemas de mensagens Windows, etc), mas saiba que programar em Windows hoje é bem menos sofrido.

É isso mesmo. O Petzold é bom para entender como o Windows funciona. É bom também entender os conceitos de programação orientada a objetos.

Aí quando você for usar um ambiente visual de desenvolvimento, saberá exatamente o que está fazendo.

Eu continuo usando a API diretamente porque é difícil ensinar truque novo a cachorro velho, mas reconheço que as ferramentas visuais poupam um monte de trabalho.

Só que também vi gente programando em algum ambiente visual que só saben arrastar coisinhas com o mouse, e acham que isso é saber programar.

Se você não sabe realmente o que está fazendo, quando tiver que se afastar um milímetro da trilha dos exemplos clásicos, está perdido. :cry:

Não seja um desses !

Abraços,

Elga.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...