Dicas
math.h
Para usar a biblioteca math.h com o gcc, use o comando
gcc -lm <arquivo.c>
Esta opção linka seu programa com a math.h.
Controlando o console
Para enviar caracteres de escape e controlar o console, podemos usar o printf e os caracteres de controle que são escritos dentro da string de formatação. Para isso, colocamos \e[ antes do caracter de controle do console.
Os caracteres de escape do console no linux podem ser consultados com o comando
man console_codes
exemplo:
- escreve em vermelho:
printf("\e[31m %d",3);
- escreve em preto:
printf("\e[30m %d",3)
- limpa a tela:
printf("\e[H\e[2J");
Melhor ainda, use um #define no início de seu programa e chame ele como uma função normal:
#define clrscr() printf("\e[H\e[2J")
Arquivos texto de Windows para Linux
Quando usamos um arquivo editado no Windows, pelo Notepad ou similares, o caractere de return é composto, na verdade, de dois caracteres. No Linux é composto apenas por um. Quando o arquivo é aberto, aparecem uns ^M no final de cada linha, que são os caracteres que sobraram. Para eliminá-los no Linux, basta fazer em um console:
tr -d '\r' < arquivo_dos
se quiser pode redirecionar para ter outro arquivo como saída:
tr -d '\r' < arquivo_dos > arquivo_linux
Uso de cores com o printf e console no linux S
//Definição das cores pelo console
#define PRETO "\e[40m \e[49m"
#define VERMELHO "\e[41m \e[49m"
#define VERDE "\e[42m \e[49m"
#define MARROM "\e[43m \e[49m"
#define AZUL "\e[44m \e[49m"
#define MAGENTA "\e[45m \e[49m"
#define CIANO "\e[46m \e[49m"
#define CINZA "\e[47m \e[49m"
printf(VERMELHO);
printf(VERDE);
printf(CINZA);
printf(MARROM);
printf(AZUL);
printf(PRETO);
printf(MAGENTA);
printf(CIANO);
printf(CIANO);