O que é uma Variável? - Primeiros passos em C#
Tags: csharp, tutorial
Published: 2023-11-27 13:47:29

## Conceitos Iniciais
**By: Maria Alice Ferreira Pereira**

Olá amigo(a) estudante! 😁 
Hoje vou ajuda-los (ou pelo menos tentar) a entender o que são e como funcionam as variáveis em C#.
Esse material é bem útil pois com ele podemos entender como funcionam as variáveis em outras linguagens além do C#, se você está começando no mundo da programação agora, não se preocupe, vou tentar deixar tudo o mais simples possível!!!




## **Variáveis**


- **O que é uma variável?**


A grosso modo é uma posição reservada na memória RAM, pelo nosso programa para armazenamento de dados.
Vamos entender como funciona a **declaração** e **atribuição** de variáveis. 🙋
Quando falamos em **declarar** uma variável estamos falando em **criar** uma variável, e quando falamos em **atribuir** uma variável, estamos falando em **adicionar um valor nela.**
`C# é uma linguagem de programação fortemente tipada! Temos que especificar o tipo de dado que queremos armazenar. `

- **Como fazemos isso?**

Começamos informando o tipo:

```
int  → tipo inteiro primitivo 
```

Depois damos um nome à nossa variável seguida de um ponto e vírgula:

```
int  num;
```


Note que não atribuímos nenhum valor a nossa variável, então ela está valendo 0.

É sempre importante atribuir um valor as variáveis, e isso não é difícil: 

```
int  num =  0; → O operador = nesse contexto é um operador de atribuição.
```
`⤤ O que fizemos ali em cima foi atribuir 0 a nossa variável num`

Trabalhamos acima com o tipo primitivo int, saiba que existem outros tipo primitivos e não primitivos.



Aqui vamos falar de mais alguns tipos  primitivos que são muito utilizados:

Tipo ; Descrição ; Exemplo de Declaração 

**byte**
Armazena valores inteiros positivos de 0 a 255
   ` byte n1 = 10;`


**int**
Tipo inteiro que armazena valores inteiros positivo e negativos
   ` int num = -10;`


**char**
Armazena caracteres
 `char letra =  ‘A’;`


**float** 
Ponto flutuante, armazena valores reais, e deve ser especificado com um f antes do ;
 `float valor = 5.3f;`


**string**
 Conjunto de caracteres  armazena texto
 `string nome = “Maria”;`



É óbvio que não vamos falar de todos os tipos que existem, mas saiba que existem outros e que aqui só falamos dos mais utilizados.

- Vamos falar agora de um tipo especial, o **var.**
Da uma olhada:

```
var aux = 10;
```

`↳ Quando usamos o **var** não estamos especificando o tipo daquela variável. `
_Mas espera aí! Você não disse que C# é uma linguagem extremamente tipada??💢💢_

De fato! Eu não especifiquei o tipo, mas o lance do var é esse, você não especifica o tipo, pois o tipo dessa variável vai ser definido no ato da compilação pela atribuição que essa variável tem.

Em nosso exemplo:

```
var aux = 10;
```


Como aux está recebendo um valor inteiro seu tipo será int 
Isso significa que se colocarmos:

```
var aux = “Texto”;
```


A nossa variável aux será uma variável do tipo string.
 

> **❗Atenção❗** Quando utilizamos var, automaticamente na atribuição ela irá receber o tipo, não é aconselhável mudarmos o tipo do var posteriormente, uma vez declarado e atribuído, aquele tipo vai ser associado a variável.

Podemos ainda fazer isso:  

```
string nome = “Maria”;
var aux = nome;
```

O que é **nome**? 
O nome é uma variável do tipo string que tem o valor “Maria”, então automaticamente na compilação **aux** vai ser uma variável do tipo  **string.**

- **E como fazemos para ler uma variável?**

Podemos colocar:

```
Console.WriteLine(aux)
```

`Nesse caso acima estamos atribuindo o aux ao WriteLIne, significa que eu vou imprimir na tela o valor da variável aux `


## **👽Faça o Teste 👽**

Faça esse pequeno exercício para praticar:

 Declare duas variáveis do **tipo string** com o valor que desejar; Crie em seguida uma variável **var** e atribua a ela o valor de uma das string que você criou anteriormente; Por último, print na tela suas strings com a ajuda do Console.WriteLine() ou só Console.Write(); E veja o programa rodando!😁 
`(Você também pode criar outras variáveis de outros tipos e printar na tela)`




Podemos ainda **concatenar** coisas aqui no nosso `Console.WriteLine(aux)`
Se quisermos **concatenar** um texto junto com uma variável, usamos esse padrão:

```
Console.WriteLine(“”+aux)
Console.WriteLine(“Valor da variável: ”+aux)
```


Podemos concatenar depois também:

```
Console.WriteLine(“Valor da variável: ” + aux + “...”)
```

`(Aproveite o exercício anterior e tente concatenar algo também!)`

- **E se quisermos declarar múltiplas variáveis?**
  `Isso mesmo!`

Podemos usar uma declaração de tipo, e usar a mesma linha para declarar essas múltiplas variáveis, desde que sejam do mesmo tipo:

```
int num1, num2, res;
 num1 = 10;
 num2 = 2;
res = num1 * num2
Console.WriteLine(“A multiplicação de” + num1 + “com” + num2 + “é igual a: ” + res +);
```


> Podemos acima fazer a operação de multiplicação **num1 * num2 no Console.WriteLine** e então não precisamos declarar a variável res. Também podemos inicializar nossas múltiplas variáveis já com valores int **num1 =10, num2 = 2;** .


Muito bem amigos! Por hoje é só. 😁 Espero que vocês tenham gostado e entendido um pouquinho.😜

Muito obrigada por ler até aqui! 

Até a próxima!! 🫂