Ir para conteúdo
Fórum Script Brasil
  • 0

So E Funções...


Denis Bittencourt Muniz

Pergunta

Olá galera!!!!

Tenho duas dúvidas:

1. Se eu fizer um programa (lógicamente este programa não terá parte gráfica!) usando o SO windows (de qualquer versão) e um compilador qualquer (Borland C++, Dev-C++, Visual C++, C++ Builder, etc...), este programa rodará sem problemas no DOS? E o mesmo acontece em caso de Linux com Unix?

2. Não consegui usar algumas funções, são elas: random, textcolor, textbackground, sound, delay, nosound, clrscr, clreol, gotoxy e window

Quando uso essas funções, retorna o erro dizendo que elas não estão declaradas(mas eu coloco as bibliotecas que pedem como, por exemplo, conio, stdlib, dos.

Ae galera, de uma olhada no artigo de funções q to lendo, confira:

4.6 Escrita formatada em cores: cprintf()

Biblioteca: conio.h

Declaração: int cprintf (const char* st_contr [, lista_arg]);

Propósito: Esta função cprintf() (color print formated) permite a saída de dados numéricos, caracteres e strings usando cores. O uso da função cprintf()é semelhante a printf()porém permite que a saída seja a cores. Para que a saída seja colorida é necessário definir as cores de fundo e de letra para a impressão antes do uso da função.

Cores (Modo Texto)

Cor              Constante    Valor  Fundo  Letra

Preto            BLACK          0    ok      ok

Azul            BLUE            1    ok      ok

Verde            GREEN          2    ok      ok

Cian            CYAN            3    ok      ok

Vermelho        RED            4    ok      ok

Magenta          MAGENTA        5    ok      ok

Marrom          BROWN          6    ok      ok

Cinza Claro      LIGHTGRAY      7    ok      ok

Cinza Escuro    DARKGRAY        8    --      ok

Azul Claro      LIGHTBLUE      9    --      ok

Verde Claro      LIGHTGREEN    10    --      ok

Cian Claro      LIGHTCYAN      11    --      ok

Vermelho Claro  LIGHTRED      12    --      ok

Magenta Claro    LIGHTMAGENTA  13    --      ok

Amarelo          YELLOW        14    --      ok

Branco          WHITE          15    --      ok

Piscante        BLINK        128    --      ok

Estas definições são feitas pelas funções texcolor() e textbackground() cuja sintaxe é:

textcolor(cor_de_letra);

textbackground(cor_de_fundo);

onde cor_de_letra e cor_de_fundo são números inteiros referentes as cores da palheta padrão (16 cores, modo texto). Estes valores de cor são representadas por constantes simbólicas definidas na biblioteca conio.h. Para se usar uma letra piscante deve-se adicionar o valor 128 ao valor da cor de letra. Alguns valores de cor não podem ser usados como cor de fundo. A relação acima mostra as cores, suas constantes simbólicas e onde podem ser usadas:

Exemplo: O trecho de programa abaixo imprime uma mensagem de alerta em amarelo piscante sobre fundo vermelho.

#include <conio.h>

...

textbackground(RED);

textcolor(YELLOW + BLINK);

cprintif(“ Alerta: Vírus Detectado! ”);

...

Programa Exemplo: O programa do arquivo e0406.cpp mostra todas as combinações possíveis de impressão colorida em modo texto.

4.7 Saída sonora: sound(), delay(), nosound()

Biblioteca: dos.h

Declarações: void sound(unsigned freq);

              void delay(unsigned tempo);

              void nosound(void);

Propósito: A função sound() ativa o alto-falante do PC com uma freqüência freq (Hz). A função delay() realiza uma pausa (aguarda intervalo de tempo) de duração tempo (milisegundos). A função nosound() desativa o alto-falante.

Programa Exemplo: O uso destas funções é muito simples mas produz resultados interessantes. No arquivo e0407.cpp temos um exemplo do uso de sons em programas.

4.8 Limpeza de tela: clrscr(), clreol()

Biblioteca: conio.h

Declarações: void clrscr(void);

              void clreol(void);

Propósito: A função clrscr() (clear screen) limpa a janela de tela e posiciona o cursor na primeira linha e primeira coluna da janela (canto superior esquerdo da janela). A função clreol() (clear to end of line) limpa uma linha desde a posição do cursor até o final da linha mas não modifica a posição do cursor. Ambas funções preenchem a tela com a cor de fundo definida pela função textbacground().

4.9 Posicionamento do cursor: gotoxy()

Biblioteca: conio.h

Declarações: void gotoxy(int pos_x, int pos_y);

Propósito: Em  modo texto padrão, a tela é dividida em uma janela de 25 linhas e 80 colunas. A função gotoxy() permite posicionarmos o cursor em qualquer posição (pos_x,pos_y) da tela. Sendo que a posição (1,1) corresponde ao canto superior esquerdo da tela e a posição (80,25) corresponde ao canto inferior direito. Como as funções printf() e cprintf() escrevem a partir da posição do cursor, podemos escrever em qualquer posição da tela. 

4.10 Redimencionamento de janela: window()

Biblioteca: conio.h

Declarações: void window(int esq, int sup, int dir, int inf);

Propósito: Esta função permite redefinir a janela de texto. As coordenadas esq e sup definem o canto superior esquerdo da nova janela, enquanto as coordenadas inf e dir definem o canto inferior direito da nova janela. Para reativar a janela padrão escreve-se a instrução window(1,1,80,25). Quando uma janela é definida, o texto que ficar fora da janela fica congelado até que se redefina a janela original.

4.11 Monitoração de teclado: kbhit()

Biblioteca: conio.h

Declarações: int kbhit(void);

Propósito: Esta função (keyboard hitting) permite verificar se uma tecla foi pressionada ou não. Esta função verifica se existe algum código no buffer de teclado. Se houver algum valor, ela retorna um número não nulo e o valor armazenado no buffer pode ser lido com as funções getch() ou getche(). Caso nenhuma tecla seja pressionada a função retorna 0. Observe que, ao contrário de getch(), esta função não aguarda que uma tecla seja pressionada.

Programa Exemplo: O arquivo e0408.cpp contém um programa para exemplificar o uso das funções clrscr(), clreol(), gotoxy(), window(), kbhit().

OBS: As funções cprintf e kbhit consegui usa-las...

Esse artigo tá certo? Tb tem q pedir desculpas por esse tamanho de post... XD

OBS: Programo em C e estou usando Dev-C++(já tentei usar Visual C++ tb, mas não deu certo)...

Falow galera!!!!!!!

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

pa, vou tentar te ajudar:

1. Se eu fizer um programa (lógicamente este programa não terá parte gráfica!) usando o SO windows (de qualquer versão) e um compilador qualquer (Borland C++, Dev-C++, Visual C++, C++ Builder, etc...), este programa rodará sem problemas no DOS? E o mesmo acontece em caso de Linux com Unix?

Sim, se você fizer um programa em c++ em windows, ele rodara em dos, mas no caso do linux, não sei se ele suporta c++, preciso confirmar, mas uma linguagem voltada para o linux, que e o kylix, roda perfeitamente tanto no linux como no unix!

2. Não consegui usar algumas funções, são elas: random, textcolor, textbackground, sound, delay, nosound, clrscr, clreol, gotoxy e window

Quando uso essas funções, retorna o erro dizendo que elas não estão declaradas(mas eu coloco as bibliotecas que pedem como, por exemplo, conio, stdlib, dos.

Bem, eu já o vi, mas nunca usei esse cprintf, se não me engano, e so pra colorir a frase que vai ser inserida nessa instrução, mas no caso se você for usar printf, sua diretiva de pre compilação ( biblioteca ) e stdio.h. O resto esta correto, eu so não entendi esse int cprintf, so se essa instrução for uma declaração de variavel. No caso do compilador, recomendo o Borland Turbo C++ da borland, nunca tive problemas com ele, e um otimo compilador! Como e seu codigo, eu posso dar uma olhadinha? As vezes você ta errando em alguma declaração!

Link para o comentário
Compartilhar em outros sites

  • 0

O problema é q estou aprendendo C e realizo testes pequenos após a leitura... Mas aqui vai um código de ultima hora para você avaliar:

#include <stdio.h>
#include <conio.h>
#include <dos.h>
#include <stdlib.h>

main(){
    textcolor(14); //Amarelo
    cprintf("Oi!!!!!");
    sound(90);
    textcolor(4); //Vermelho
    cprintf("\nSom!!!");
    nosound();
    system("pause"); //OBS: Consegui usa-la normalmente
}

Link para o comentário
Compartilhar em outros sites

  • 0

Quando uso essas funções, retorna o erro dizendo que elas não estão declaradas(mas eu coloco as bibliotecas que pedem como, por exemplo, conio, stdlib, dos).

E.. Qual compilador você está usando?

Link para o comentário
Compartilhar em outros sites

  • 0

Bem, eu não nunca usei o dev, por isso não sei te dizer se a declaração de arquivos de inclusao estao certas ou erradas, mas no que uso e assim mesmo. Eu uso o Borland Turbo C++ 3.1, ele e muito bom, e nunca tive problemas com ele, eu o aconselho! Tente compilar nele, e so digitar no google que você acha alguns links para download, se não achar, me mande um email que eu lhe retorno com o compilador anexado, beleza? Falows!

Link para o comentário
Compartilhar em outros sites

  • 0
Guest - Mateus -

cara se você está usando a conio2.h no Dev c++ essas funções só funcionam da seguinte forma:

Cria um novo projeto

Depois vai no menu Projeto / Opções do projeto

Clica na aba parametros e clica em adicionar

Procura na pasta do Dev a pasta lib e nela o arquivo libconio.a

Dale Ok e pronto

só crias o fonte

Isso claro, se você tiver a conio2 instalada!!

[]'s

Link para o comentário
Compartilhar em outros sites

  • 0

Olá galera!!!!

Tenho duas dúvidas:

1. Se eu fizer um programa (lógicamente este programa não terá parte gráfica!) usando o SO windows (de qualquer versão) e um compilador qualquer (Borland C++, Dev-C++, Visual C++, C++ Builder, etc...), este programa rodará sem problemas no DOS? E o mesmo acontece em caso de Linux com Unix?

2. Não consegui usar algumas funções, são elas: random, textcolor, textbackground, sound, delay, nosound, clrscr, clreol, gotoxy e window

Quando uso essas funções, retorna o erro dizendo que elas não estão declaradas(mas eu coloco as bibliotecas que pedem como, por exemplo, conio, stdlib, dos.

aí galera, de uma olhada no artigo de funções que to lendo, confira:

4.6 Escrita formatada em cores: cprintf()

Biblioteca: conio.h

Declaração: int cprintf (const char* st_contr [, lista_arg]);

Propósito: Esta função cprintf() (color print formated) permite a saída de dados numéricos, caracteres e strings usando cores. O uso da função cprintf()é semelhante a printf()porém permite que a saída seja a cores. Para que a saída seja colorida é necessário definir as cores de fundo e de letra para a impressão antes do uso da função.

Cores (Modo Texto)

Cor              Constante    Valor  Fundo  Letra

Preto            BLACK          0    ok      ok

Azul            BLUE            1    ok      ok

Verde            GREEN          2    ok      ok

Cian            CYAN            3    ok      ok

Vermelho        RED            4    ok      ok

Magenta          MAGENTA        5    ok      ok

Marrom          BROWN          6    ok      ok

Cinza Claro      LIGHTGRAY      7    ok      ok

Cinza Escuro    DARKGRAY        8    --      ok

Azul Claro      LIGHTBLUE      9    --      ok

Verde Claro      LIGHTGREEN    10    --      ok

Cian Claro      LIGHTCYAN      11    --      ok

Vermelho Claro  LIGHTRED      12    --      ok

Magenta Claro    LIGHTMAGENTA  13    --      ok

Amarelo          YELLOW        14    --      ok

Branco          WHITE          15    --      ok

Piscante        BLINK        128    --      ok

Oi cara, meu nome é Jorge, desculpe a intromissão, mas eu gostaria de saber onde você encontrou esse tutorial. Se você puder me falar eu agradeço.

Valeu!

Link para o comentário
Compartilhar em outros sites

  • 0

Olá Jorge, beleza?

Infelizmente não tenho mais e nem lembro onde baixei essa apostila. Mas visite nossa área de dicas/tutorias para C/C++, aqui mesmo nessa sala, no topo da sala, e viste o tópico com o título 'Material de estudo', você obterá alguns sites legais sobre C/C++.

Falows! Qualquer coisa estamos aí!

Link para o comentário
Compartilhar em outros sites

  • 0

Provavelmente o seu programa rodará no Linux. É claro que se você estiver utilizando um recurso específico do SO o programa não irá funcionar. Acredito que se você possuir todas "refêrencias" que você utilizou e utilizar o mesmo compilador nos dois, você não terá problema algum. Um bom exemplo disso é que consigo compilar no Cygwin meus programas desenvolvidos no DevC++.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...