Ir para o conteúdo
Dani

[C] Ajuda: Cores na consola

Mensagens Recomendadas

Dani    0
Dani

Boas

Já que a parte do interface com o utilizador conta sempre uma boa parte ao entregarmos os trabalhos, a minha questão é esta: será que dá para usarmos cores em C?

Cumps

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
UnKnowN    0
UnKnowN

In: Portugal-a-Programar | Linguagens | C++ | Trab prático - dúvidas (tópico activo)

Experimenta assim

int main(void)

      {

          textcolor(BLUE);

          cprintf("I'm blue.");

      }

utilizei o Dev-C++ e nao consigo. da-me varios erros:

  127 ... `BLUE' undeclared (first use this function) 

  127 ...  `textcolor' undeclared (first use this function)

  128 ... `cprintf' undeclared (first use this function)

será necessario inicializar alguma biblioteca em especifico?

eu fiz os includes de:

#include "stdafx.h"

#include "conio.h"

#include "stdio.h"

#include "stdlib.h"

#include "string.h"

#include "math.h"

#include "conio.h"

#include "windows.h."

e nada...

entao mas e qual a biblioteca referente as cores????  pois...deve ser esse o teu problema... deve ser ou graphic.h ou RGb ... bem nao sei nem vou estar a dizer disparates....

Nao sei se ajuda, mas C e C++ são muito parecidos

Com 1 breve peskisa tinhas descoberto este tópico :cheesygrin:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Dani    0
Dani

Obrigado pela resposta pronta.

Mas a questão é que a função cprintf ou muito me engano ou apenas existe em C++.

De resto tentei compilar o prog que estava nesse tópico e não consegui.

Será que só há cores em C++ ?

Cumps

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
UnKnowN    0
UnKnowN

Obrigado pela resposta pronta.

Mas a questão é que a função cprintf ou muito me engano ou apenas existe em C++.

De resto tentei compilar o prog que estava nesse tópico e não consegui.

Será que só há cores em C++ ?

Cumps

Talvez não tenha dado pelo que a tofas disse... nao usaste a lib referente às cores... e eu também nao sei qual é, desculpa... :cheesygrin:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
motherFFH    1
motherFFH

Usar cores não é portável de ambiente para ambiente. Em Unix usam-se as curses ou ncurses para se o fazer.

Uma forma "quick-and-dirty" que funciona em quase toda a parte, para o fazer é usar sequências de escape: printf("\033[34mAZUL\033[0m\n");

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
untouchables    0
untouchables

Usar cores não é portável de ambiente para ambiente. Em Unix usam-se as curses ou ncurses para se o fazer.

Uma forma "quick-and-dirty" que funciona em quase toda a parte, para o fazer é usar sequências de escape: printf("\033[34mAZUL\033[0m\n");

:\  isso não está a funcionar comigo... tambem queria saber usar cores em C.

quanto ao site que o unknown postou, também está down...

haverá alguma forma de pôr as cores a funcionar?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
entering    0
entering

não existe nenhuma maneira standard de usar cores

essa do textcolor que eu saiba só funciona com o borland c

quanto ao dev-C++ é apenas um IDE usando o gcc como compilador

vejo um include conio.h, essa libraria apenas existe para windows logo mesmo que esse code funcionasse no dev-c++ passavas para unix e nao funcionava

gcc -Wall teste.c

teste.c:2:19: conio.h: No such file or directory

quanto a printf("\033[34mAZUL\033[0m\n"); usa escape codes, windows nao suporta escape codes, logo tal como o motherFFH disse não é portavel de ambiente para ambiente e referiu Unix. Estas a usar windows é obvio que nao funciona.

www.google.pt

vais encontrar alguma solução (mas apenas funcionaria em windows), acho que os teus profs têm noçao das limitações de C, e não devem contar muito isso das cores, porque estas a sacrificar a portabilidade da aplicação

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
untouchables    0
untouchables

a conio.h está incluida nas livrarias ncurses disponibilizadas pela gnu...

esse printf("\033[34mAZUL\033[0m\n"); funciona onde?

o trabalho tem de ser apresentado em linux, o objectivo é ter tudo a funcionar lá...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
entering    0
entering

experimentei em FreeBSD e funcionou, deve funcionar em unix de um modo geral

não estou em casa e não tenho linux aqui, mas posso experimentar em FC3 quando chegar a casa

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
untouchables    0
untouchables

funciona em linux ;)

obrigado ;) vou tentar ver outras cores. ou alguem sabe mais?

edit: alguem me pode dizer se sabe mais? é que estive agora a tentar encontrar as cores, mas não sei como as alterar :\

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade