Comandos Básicos

Terminal do Ubuntu

O Comando para deixar o terminal em tela cheia e sem a barra de menu:
gnome-terminal --full-screen --hide-menubar
O comando para deixar o terminal na largura e altura 80x24 e sem barra de menu:
gnome-terminal --hide-menubar --geometry=80x24
Ele vai abrir um outro terminal com os comandos colocados.
Para vc ver mais comandos iguais a esses ae em cima é só digitar no terminal:
gnome-terminal --help-all
Ou vc usa esse --full-screen ou esse --geometry=80x24 não pode usar os 2 juntos.
Obs: Ubuntu é uma distro linux.
terminal

Primeiro programa

Existem muitas maneiras, mas a mais simples e diria didatica tambem, é utilizar o gcc, edite o codigo fonte em um kwrite, ou qualquer editor de texto, após terminar o texto salve com extensão .c.
Feito isso siga os passos abaixo:

gcc nomedoarquivo.c -o nomedoarquivosaida

E depois para executa-lo:

./nomedoarquivosaida
Arquivo: Exemplo.c
#include <stdio.h>
#define VALUE 6

int i;
int j;

#define CLEAR printf("\033c");
#define clear printf("\e[H\e[2J");

int main(int argc, char **argv){
   CLEAR;
   j=1;
   for (i=1; i<=VALUE; i++)
      j=j*i;
   printf("O resultado de: %d é: %d\n",  VALUE, j);
   printf("Pressione ENTER para continuar...\n");
   getchar();
   return 0;
}
~$ gcc Exemplo.c -o Exemplo
~$ ./Exemplo
O resultado de: 6 é: 720
Pressione ENTER para continuar...
~$

Entrada de argumentos

Arquivo: Exemplo.c
#include <stdio.h>

int main(int argc, char **argv){

   printf("Entrada de argumentos ");
   int x;
   for(x=1; x<argc; x++)
      printf("%s ", argv[x]);
   printf("\n");

   return 0;
}
Comandos
~$ gcc Exemplo.c -o Exemplo
~$ ./Exemplo João Henrique
Entrada de argumentos João Henrique
~$

Executando um programa

Arquivo: Exemplo.c
#include <stdio.h>

int main(int argc, char **argv){

   system("gedit Exemplo.c");

   printf("\nPressione ENTER para continuar...");
   getchar();

   return 0;
}
~$ gcc Exemplo.c -o Exemplo
~$ ./Exemplo
<<<Abrirá um editor de texto gedit com o arquivo Exemplo.c>>
Pressione ENTER para continuar...
~$

Tipo de variáveis

int

O tipo de dado int (inteiro) serve para armazenar valores numéricos inteiros. Existem vários tipos de inteiros, cada um de um tamanho diferente (dependendo do sistema operacional e/ou arquitetura do processador):
    * int, pode possuir 16 bits, 32 bits ou 64 bits
    * short int, deve possuir tamanho de no mínimo 16 bits e não pode ser maior que int
    * long int, deve possuir tamanho mínimo de 32 bits
    * long long int, deve possuir tamanho mínimo de 64 bits
Todos estes tipos de inteiros podem ainda ser declarados precedidos da cláusula unsigned, o que faz com que só suporte números positivos. Isto faz com que, com o mesmo tamanho, uma variável suporte mais números positivos do que um signed (todos os inteiros são signed por omissão).

char

O tipo char ocupa 1 byte, e serve para armazenar caracteres ou inteiros. Isso significa que o programa reserva um espaço de 8 bits na memória RAM ou em registradores do processador para armazenar um valor (char de tamanho maior que 8 bits é permitido pela linguagem, mas os casos são raros). Com vetores do tipo char é possível criar cadeias de caracteres (strings).

float

O tipo de dado float serve para armazenar números de ponto flutuante, ou seja, com casas decimais.

double

O tipo de dado double serve para armazenar números de ponto flutuante de dupla precisão, normalmente tem o dobro do tamanho do float e portanto o dobro da capacidade.

String de controle

String de controle: Formada pelos caracteres que a função imprime na tela, e pelos comandos de formatação (%c, %s, %d, %f) que definem a maneira como as variáveis serão impressas e caracteres especiais (\n, \t, ...).
Código Tipo Formato
%s char * String (vetor de caracteres)
%d int Inteiro decimal com sinal
%i int Inteiro decimal com sinal
%o int Inteiro octal sem sinal
%u int Inteiro decimal sem sinal
%x int Inteiro hexadecimal sem sinal (com a, b, c, d, e, f)
%X int Inteiro hexadecimal sem sinal (com A, B, C, D, E, F)
%f float Valor com sinal da forma [-]dddd.dddd
%c char Um caracter
%% nada O caracter % é impresso

 

Inserindo um texto String

Arquivo: Exemplo.c
#include <stdio.h>
#include <string.h>

int main(int argc, char **argv){

   char nome[50];

   printf("Digite um texto:");
   fgets(nome, 50, stdin);
   if(nome[strlen(nome)-1]=='\n')
      nome[strlen(nome)-1]='\0';

   printf("Meu nome é %s\n",nome);

   return 0;
}
Comandos
~$ gcc Exemplo.c -o Exemplo
~$ ./Exemplo
Digite um texto:João
Meu nome é João
~$

Inserindo números int

Arquivo: Exemplo.c
#include <stdio.h>
#include <string.h>

int main(int argc, char **argv){

   int x;
   int numero[3];

   for(x=1;x<=3;x++){
      printf("Digite o %dº numero:",x);
      scanf("%d",&numero[x-1]);

      scanf("%*[^\n]"); scanf("%*c"); //Para limpar o buffer do scanf
   }

   int soma = numero[0]+numero[1]+numero[2];
   printf("Resultado da soma %d\n", soma);

   return 0;
}
Comandos
~$ gcc Exemplo.c -o Exemplo
~$ ./Exemplo
Digite o 1º numero:1
Digite o 2º numero:2
Digite o 3º numero:3
Resultado da soma 6
~$

Inserindo um número float

Arquivo: Exemplo.c
#include <stdio.h>
#include <string.h>

int main(int argc, char **argv){

   int x;
   float numero[3];

   for(x=1;x<=3;x++){
      printf("Digite o %dº numero:",x);
      scanf("%f",&numero[x-1]);

      scanf("%*[^\n]"); scanf("%*c"); //Para limpar o buffer do scanf
   }

   float soma = numero[0]+numero[1]+numero[2];
   printf("Resultado da soma %f\n", soma);

   return 0;
}
Comandos
~$ gcc Exemplo.c -o Exemplo
~$ ./Exemplo
Digite o 1º numero:1.25
Digite o 2º numero:2.43
Digite o 3º numero:3.74
Resultado da soma 7.420000
~$

Inserindo um caractere

Arquivo: Exemplo.c
#include <stdio.h>

int main(int argc, char **argv){
   char c;
   printf("Digite uma letra: ");
   c = getchar();
   scanf("%*[^\n]"); scanf("%*c"); //Para limpar o buffer do scanf
   printf("Você digitou a letra %c", c);
   printf("\nPressione ENTER para continuar...");
   getchar();

   return 0;
}
Comandos
~$ gcc Exemplo.c -o Exemplo
~$ ./Exemplo
Digite uma letra: A
Você digitou a letra A
Pressione ENTER para continuar...
~$

Convertendo um numero numa String

sprintf()

Arquivo: Exemplo.c
#include <stdio.h>
int main(int argc, char **argv){
   int a = 234;
   float b = 2.598;
   char string_x[50];
   sprintf(string_x,"int a = %d\nfloat b = %f\n", a, b);
   printf("%s",string_x);
   return 0;
}
Comando:
~$ gcc Exemplo.c -o Exemplo
~$ ./Exemplo
int a = 234
float b = 2.598000
~$

Limpado a tela

Arquivo: Exemplo.c
#include <stdio.h>

#define CLEAR printf("\033c");
#define clear printf("\e[H\e[2J");

/*
* Obs: temos dois tipos para limpar tela
* CLEAR => Limpa a tela avançando o texto para cima
* clear => Limpa a tela apagando o texto acima
*/
int main(int argc, char **argv){

   //  limpar a tela
   // CLEAR;
   // ou
   clear;

   printf("Pressione ENTER para continuar...");
   getchar();

   return 0;
}
Comandos
Pressione ENTER para continuar...
~$

Cores

SEQUÊNCIA DE CORES
\033[30m     Cor do primeiro plano preta
\033[31m     Cor do primeiro plano vermelha
\033[32m     Cor do primeiro plano verde
\033[33m     Cor do primeiro plano laranja
\033[34m     Cor do primeiro plano azul
\033[35m     Cor do primeiro plano magenta
\033[36m     Cor do primeiro plano ciano
\033[37m     Cor do primeiro plano branca
\033[40m     Cor do fundo preta
\033[41m     Cor do fundo vermelha
\033[42m     Cor do fundo verde
\033[43m     Cor do  fundo laranja
\033[44m     Cor do fundo azul
\033[45m     Cor do fundo magenta
\033[46m     Cor do fundo ciano
\033[47m     Cor do fundo branca

\033[0;0m RETORNAR A COR PADRÃO

Arquivo: Exemplo.c
#include <stdio.h>

int main(int argc, char **argv){

   printf("Cores\n");
   printf("\033[30m\033[47mExemplo\033[0;0m\n");
   printf("\033[31m\033[46mExemplo\033[0;0m\n");
   printf("\033[32m\033[45mExemplo\033[0;0m\n");
   printf("\033[33m\033[44mExemplo\033[0;0m\n");
   printf("\033[34m\033[43mExemplo\033[0;0m\n");
   printf("\033[35m\033[42mExemplo\033[0;0m\n");
   printf("\033[36m\033[41mExemplo\033[0;0m\n");
   printf("\033[37m\033[40mExemplo\033[0;0m\n");
   printf("Pressione ENTER para continuar...");
   getchar();

   return 0;
}
Comandos
cores

Linha e Coluna do Terminal

\033[x;yH     posiciona o cursor na linha x, coluna y
\033[xA     move o cursor x linhas para cima
\033[xB     move o cursor x linhas para baixo
\033[yC     move o cursor y colunas para a direita
\033[yD     move o cursor y colunas para a esquerda
Arquivo: Exemplo.c
#include <stdio.h>

#define CLEAR printf("\033c");
#define clear printf("\e[H\e[2J");

int main(int argc, char **argv){

   CLEAR; // limpa a tela

   printf("\033[10;20HLinha 10 coluna 20");
   printf("\033[%d;%dHLinha 20 Coluna 5", 20, 5);
   printf("\nPressione ENTER para continuar...");
   getchar();

   return 0;
}
Comandos









                   Linha 10 coluna 20









    Linha 20 Coluna 5
Pressione ENTER para continuar...

Caracteres especiais

Para ver mais caracteres: clique aqui.
Arquivo: Exemplo.c (Obs: por padrão, os caracteres especiais são usados no C++)
#include <stdio.h>

int main(int argc, char **argv){
   printf("\u9321 \u9320 \u9319 \u9318 \u9317 \u9316 \u9315 \u9314 \u9313 \u9312");

   printf("\nPressione ENTER para continuar...");
   getchar();

   return 0;
}
~$ gcc Exemplo.c -o Exemplo
~$ ./Exemplo
錡 錠 錙 錘 錗 錖 錕 錔 錓 錒
Pressione ENTER para continuar...
~$

 

Hífen \'
Aspas \"
Barra invertida \\
Nova linha \n
Marca de tabulação \t
Retorno de carro \r
Backspace \b

Exemplo:

Arquivo: Exemplo.c
#include <stdio.h>

int main(int argc, char **argv){
   printf("\tO livro: \"Manual Prático do ");
   printf("Programador\". \nEstá nas livrarias ");
   printf("e \\ ou jornaleiros. ");
   printf("\n");
   return 0;
}
~$ gcc Exemplo.c -o Exemplo
~$ ./Exemplo
          O livro: "Manual Prático do Programador".
Está nas livrarias e \ ou jornaleiros.
~$

Fechando um programa

Arquivo: Exemplo.c
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char **argv){

   printf("Fechando um programa");
   printf("\nPressione ENTER para continuar...");
   getchar();

   return 0; // Opção 1
   // ou
   // exit(EXIT_SUCCESS); // Opção 2
}
~$ gcc Exemplo.c -o Exemplo
~$ ./Exemplo
Fechando um programa
Pressione ENTER para continuar...
~$