Menu
Coddy logo textTech

Declarando uma Struct

Parte da seção Lógica e Fluxo do Journey de C da Coddy. Lição 39 de 63.

Agora que você entende o que é uma struct, é hora de aprender a criar seus próprios tipos de estrutura. Declarar uma struct em C segue uma sintaxe específica que define o modelo para o seu tipo de dados personalizado.

A sintaxe básica para declarar uma struct é:

struct StructureName {
    datatype member1;
    datatype member2;
    // ... mais membros
};

Veja como cada parte funciona: você começa com a palavra-chave struct, seguida por um nome para sua estrutura; depois, liste todas as variáveis-membro dentro de chaves. Cada membro é declarado assim como uma variável comum, com seu tipo de dado e nome. Não se esqueça do ponto e vírgula após a chave de fechamento!

Por exemplo, para criar uma estrutura que represente um ponto no espaço 2D:

struct Point {
    int x;
    int y;
};

Esta declaração cria um novo tipo de dado chamado struct Point que contém dois membros inteiros: x e y. Depois de declarado, esse tipo de estrutura pode ser usado em todo o seu programa para criar variáveis que armazenam informações de coordenadas de maneira organizada.

challenge icon

Desafio

Fácil

Crie um programa em C que defina uma struct para representar um livro em um sistema de biblioteca. Seu programa deve:

  1. Definir uma struct chamada Book que contenha os seguintes membros:
    • Um inteiro id para armazenar o número de identificação do livro
    • Um array de caracteres title com tamanho 50 para armazenar o título do livro
    • Um inteiro pages para armazenar o número de páginas
    • Um float price para armazenar o preço do livro
  2. Após definir a struct, imprima uma mensagem de confirmação: Book struct defined successfully!
  3. Imprima o tamanho da Book struct em bytes usando sizeof() no formato: Size of Book struct: [size] bytes
  4. Imprima individualmente o tamanho de cada membro:
    • Size of id: [size] bytes
    • Size of title: [size] bytes
    • Size of pages: [size] bytes
    • Size of price: [size] bytes

Este desafio testa sua compreensão da sintaxe de declaração de structs, incluindo o uso correto da palavra-chave struct, as declarações de membros com tipos de dados apropriados e o ponto e vírgula após a chave de fechamento. Você também explorará como C aloca memória para membros de structs usando o operador sizeof().

Lembre-se de que os valores exatos de tamanho podem variar dependendo da arquitetura do seu sistema, mas a sintaxe de definição da struct deve estar correta para que o programa compile e seja executado com sucesso.

Experimente você mesmo

#include <stdio.h>

int main() {
    // TODO: Defina sua struct Book aqui
    
    
    // Imprime a mensagem de confirmação
    printf("Book struct defined successfully!\n");
    
    // TODO: Imprima o tamanho da struct Book e de seus membros
    
    
    return 0;
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica e Fluxo

Pratique por conta própria: Compilador de C online