Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Palavras-chave sizeof(), auto, typedef | Variáveis e Tipos de Dados
Introdução ao C++
course content

Conteúdo do Curso

Introdução ao C++

Introdução ao C++

1. Primeiros Passos
2. Variáveis e Tipos de Dados
3. Introdução Aos Operadores
4. Introdução a fluxo de programa
5. Introdução a Funções

bookPalavras-chave sizeof(), auto, typedef

O tamanho de uma variável é a quantidade de memória reservada pelo compilador. O compilador reserva um número específico de bytes da memória do seu computador, baseado no tipo de dado que você está utilizando. Você pode usar a função sizeof() para descobrir o tamanho de uma variável ou tipo de dado em bytes. Por exemplo:

cpp

main

copy
12345678910
#include <iostream> int main() { int myVar1; char myVar2; std::cout << "Size of int: " << sizeof(myVar1) << std::endl; std::cout << "Size of char: " << sizeof(myVar2) << std::endl; }

O C++ permite que você selecione um tipo com um tamanho de bits preciso, como int8_t, uint8_t, int16_t, uint16_t, entre outros. Para usar esses tipos de dados, será necessário incluir o arquivo de cabeçalho <cstdint>.

Além disso, podemos forçar o compilador a determinar o tipo de variável por conta própria utilizando a palavra-chave auto.

cpp

main

copy
1234567891011
#include <iostream> int main() { auto myVar = 64.565; std::cout << "Value of myVar : " << myVar << std::endl; // double type takes 8 bytes std::cout << "Size of myVar : " << sizeof(myVar) << std::endl; }

O C++ também permite que você renomeie tipos de dados existentes por conta própria. É para isso que se utiliza o typedef:

cpp

main

copy
1234567891011121314
#include <iostream> int main() { //change name of double type to MY_NEW_TYPE typedef double MY_NEW_TYPE; MY_NEW_TYPE myVar = 64.565; std::cout << "Value of myVar: " << myVar << std::endl; // double type takes 8 bytes std::cout << "Size of myVar : " << sizeof(myVar) << std::endl; }

Quando compilada, a linha typedef indica ao compilador que MY_NEW_TYPE é apenas um tipo double.

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 2. Capítulo 6
some-alt