O código serve como estudos/lembrete para iniciantes que desejam aprender Linguagem C. Nesse caso eu nomeei de aprender-c.c . Para compilá-lo use o comando gcc aprender-c.c -o aprender-c ou usando o make aprender-c e terá a saída assim cc aprender-c.c -o aprender-c se não houver erro.
#include <stdio.h>
#include <string.h>
int main (){
char str1 [] = "isso" , str2 [] = " com aquilo" ;
printf ( " \n " );
printf ( "[+] Surgiu na década de 70, criada por Dennis Ritchie. \n " );
printf ( "[+] C é uma linguagem ESTRUTURADA, ou seja, não há orientação a objetos. \n " );
printf ( "[+] C é Case Sensitive. \n " );
printf ( "[+] 1° define o cabeçalho/bibliotecas. \n " );
printf ( "[+] 2° define as variáveis globais, se houverem. \n " );
printf ( "[+] 3° define as funções extras, se houverem. \n " );
printf ( "[+] 3° define as funções extras, se houverem. \n " );
printf ( "[+] 4° define a função principal do programa. \n " );
printf ( "[+] Olá mundo em C, o básico: \n\n " );
printf ( " \t #include <stdio.h> \n\t int main(){ \n\t printf( \" Terminal Root \\ n \" ); \n\t return 0; \n\t } \n\n " );
printf ( "[+] No cabeçalho incluímos a biblioteca stdio.h entrada e saída I \\ 0 \n " );
printf ( "[+] A função main() é a função principal, e é do tipo inteira: int \n " );
printf ( "[+] Para imprimir usamos: printf( \" CONTEÚDO \" ); \n " );
printf ( "[+] Para escapar as aspas/barras, usamos uma barra \\ \n " );
printf ( "[+] O ponto e vírgula no final é necessário para sintaxe, o \\ n , pula uma linha no prompt \n " );
printf ( "[+] return 0; Serve para informar ao compilador que ocorreu tudo certo com a função main(). \n " );
printf ( "[+] As funções ficam entre chaves {} \n " );
printf ( "[+] Salve o arquivo com o nome desejado, ex.: arquivo.c \n " );
printf ( "[+] Depois compile-o com o comando: gcc arquivo.c -o arquivo \n " );
printf ( "[+] E por fim, rode o aplicativo: ./arquivo \n " );
printf ( "[+] Comentários, podem ser de 2 formas: // barra barra ou /* barra asterisco, asterisco barra, para blocos de comentários */ \n " );
printf ( "[+] Se houver um erro , o C informa a linha, experimente colocar uma barra sem escapar \n\t aparecerá mais ou menos isso, referente a linha 25: \n\n " );
printf ( " \t aprender-c.c:25:9: warning: unknown escape sequence: '040' \n\n " );
printf ( "[+] Tipos de Dados: \n\n\t • A linguagem C possuí 5 (cinco) tipos básicos de dados : char , int , float , void e double. \n\t • Para cada tipo de dado existem modificadores de tipo, estes são 4 (quatro) : signed , unsigned, long e short. \n\t • Lembre - se, para o float nenhum modificado pode ser aplicado ; assim como para o double podemos aplicar apenas o long. \n\n " );
printf ( "[+] Declarar Variável: tipo_da_variavel nome_da_variavel = valor_inicial_da_variavel; \n " );
printf ( "[+] Declarar várias Variáveis do mesmo tipo: tipo_da_variavel nome_var1 = valor1, nome_var2 = valor2; \n " );
int num1 = 10 , num2 = 3 ;
float result = num1 + num2 ;
printf ( "Os valores sao : % i, %i e %f" , num1 , num2 , result );
printf ( " \n\n [+] Constantes de barra invertida \n\n\\ b Retrocesso (back) \n\\ f Alimentação de formulário (form feed) \n\\ n Nova linha (new line) \n\\ t Tabulação horizontal (tab) \n\\\" Aspas dupla \n\\\' Aspas simples \n\\ 0 Nulo (0 em decimal) – Terminador \n\\\\ Barra invertida \n\\ v Tabulação vertical \n\\ a Sinal sonoro (beep) \n\\ N Constante octal (N é o valor da constante) \n\\ xN Constante hexadecimal (N é o valor da constante) \n\n " );
printf ( "[+] Criando uma simples função de soma em C: \n\n #include <stdio.h> \n\t\n\t int soma(int x,int y){ \n\t return (x+y); \n\t } \n\t\n\t int main(){ \n\t int saida; \n\t saida=soma(4,8); \n\t printf ( \" O resultado da soma e: %%d \" ,saida); \n\t return(0); \n\t } \n\n " );
printf ( "[+] Perceba que escapamos o sinal de porcentagem com dois sinais, mas para formatar deve usar 1 só \n " );
printf ( "[+] Tabela de Formatos para o printf: \n\n " );
printf ( "Formato \t\t\t Saida \n " );
printf ( "c \t\t\t char \n " );
printf ( "d \t\t\t signed int \n " );
printf ( "i \t\t\t igual ao d \n " );
printf ( "e \t\t\t Notação Cientifica usando o caracter e \n " );
printf ( "E \t\t\t Notação Cientifica usando o caracter E \n " );
printf ( "f \t\t\t float \n " );
printf ( "g \t\t\t usa o menor numero possivel de f e e \n " );
printf ( "G \t\t\t usa o menor numero possivel de f e E \n " );
printf ( "o \t\t\t unsigned octal \n " );
printf ( "s \t\t\t string \n " );
printf ( "u \t\t\t unsigned int \n " );
printf ( "x \t\t\t unsigned hexa \n " );
printf ( "X \t\t\t unsigned hexa com letras maiusculas \n " );
printf ( "p \t\t\t ponteiro de endereço \n " );
printf ( "n \t\t\t Nada impresso. \n " );
printf ( "%% \t\t\t %% seguido de outro %% irá printar %% na saida \n\n " );
printf ( "[+] Concatenando strings, ou seja, do tipo char: \n " );
printf ( " \t Colocaremos uma biblioteca a mais no cabeçalho: #include <string.h> \n " );
printf ( " \t Vamos declarar no início duas strings do tipo char como matrizes: char str1[]= \" isso \" ,str2[]= \" com aquilo \" ; \n " );
printf ( " \t E vamos usar a função: strcat(), e passar o %%s no printf \n " );
printf ( " \t\v Eu vou juntar %s" , strcat ( str1 , str2 ));
printf ( " \n\n " );
printf ( "[+] Loop for: \n " );
int i ;
char letra ;
printf ( "sequência de n°s de 1 a 10 \n " );
for ( i = 1 ; i <= 10 ; i ++ )
printf ( "%d - " , i );
printf ( " \n sequência de letras de A a Z \n " );
for ( letra = 'A' ; letra <= 'Z' ; letra ++ )
printf ( "%c - " , letra );
printf ( " \n\n " );
printf ( "[+] Loop while: \n " );
int z = 0 ;
while ( i <= 4 ){
printf ( "%d \n " , z );
z ++ ;
}
//Enquanto vc não digitar a letra 'p' e pressionar ENTER o loop não para.
char Ch ;
Ch = '\0' ;
while ( Ch != 'p' ){
scanf ( "%c" , & Ch );
}
printf ( " \n\n " );
printf ( "[+] IF, ELSE e ELSE IF: \n " );
int num ; // definimos a variável num como inteira, a saída será %d
printf ( "Digite um número: \n " ); // imprimimos na tela a frase e pulamos uma linha com \n
scanf ( "%d" , & num ); // Lêmos o número digitado e armazenamos na variável num
if ( num == 0 ){ /* começamos a condição se o número for ZERO */
printf ( "O número é NULO \n " ); // executamos o comando, nesse somente imprimimos uma mensagem na tela e pulamos um linha
} else if ( num < 8 ){
printf ( "O número é Menor que 8 \n " ); // proxima condição
} else if ( num < 11 ){
printf ( "O número é maior que 7 \n " ); // mais uma condição
} else {
printf ( "O número está fora das condições criadas \n " ); // então finalizamos o bloco
}
printf ( " \n\n " );
printf ( "[+] Funções: \n " );
printf ( "A função soma está abaixo da main() e retornará os valores abaixo setados(9, 2) a soma deles: \n " );
//definimos a variável saida
int saida ;
//setamos os valores que queremos
saida = soma ( 9 , 2 );
//imprimimos na tela o resultado
printf ( "O resultado da soma e: %d \n " , saida );
printf ( " \n\n " );
printf ( " \n\n " );
printf ( " \n\n " );
printf ( " \n\n " );
return 0 ;
}
int soma ( int x , int y )
{
//efetuamos a operação
return ( x + y );
}