Quiz 09 - Introdução
1. A Linguagem C é conhecida como:
A linguagem mais fácil do mundo
O Pai das Linguagens Modernas (Baixo Nível)
Uma linguagem apenas para Web
Uma linguagem morta
??? tip "Explicação"
Criada em 1972, o C é a base de quase todos os sistemas operacionais modernos como Windows e Linux.
2. O que é a memória Stack (Pilha)?
Memória lenta e gigante
Memória rápida para variáveis locais e funções
O HD do computador
A nuvem
??? tip "Explicação"
A Stack é onde ficam as variáveis de curta duração que o compilador gerencia automaticamente para nós.
3. O que é a memória Heap (Monte)?
Memória organizada automaticamente
Memória dinâmica, gerenciada manualmente (malloc/free)
A memória da placa de vídeo
O cache do processador
??? tip "Explicação"
O Heap é o "espaço livre" onde o programador decide quando alocar e quando liberar memória.
4. O que guarda um Ponteiro?
Um valor inteiro
O Endereço de Memória de outra variável
Um texto
Uma imagem
??? tip "Explicação"
Imagine o ponteiro como um papel com o endereço de uma casa escrito nele, em vez da casa em si.
5. Qual comando usamos para COMPILAR um código C no terminal (geralmente)?
run c
gcc arquivo.c -o saida
python arquivo.c
compile c
??? tip "Explicação"
O `gcc` (GNU Compiler Collection) é o compilador padrão da indústria para a linguagem C.
6. Qual a principal diferença do C++ em relação ao C?
É mais lento
Suporte a Orientação a Objetos (Classes)
Não usa ponteiros
Não precisa compilar
??? tip "Explicação"
O C++ "nasceu" como um C com Classes, permitindo organizar sistemas muito maiores e complexos.
7. O que acontece se acessarmos um ponteiro inválido (NULL)?
Nada
Segmentation Fault (O programa trava)
O computador reinicia
O compilador corrige
??? tip "Explicação"
O "Segfault" ocorre quando o programa tenta ler/escrever numa região de memória que não lhe pertence.
8. O que faz `#include `?
Inclui a biblioteca de gráficos
Inclui a biblioteca padrão de Entrada e Saída (IO)
Inclui o Studio Code
Inclui a internet
??? tip "Explicação"
O `stdio` (Standard Input Output) contém as funções `printf` (escrever) e `scanf` (ler).
9. `int main()` deve retornar o que ao final com sucesso?
1
0
-1
"Fim"
??? tip "Explicação"
Retornar `0` para o Sistema Operacional significa: "Tudo correu bem, pode fechar o processo".
10. Por que aprender C/C++ hoje em dia?
Para fazer sites simples
Para entender como o computador funciona e performance (Jogos, SO)
Porque é modinha
Para scripts rápidos
??? tip "Explicação"
Aprender C te ensina a realidade física da memória e do processador, o que te torna um programador melhor em qualquer outra linguagem.