Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Pointers to Structs | Pointers and Structs
C Structs

Scorri per mostrare il menu

book
Pointers to Structs

The C programming language allows you to create pointers not only to regular data types but also to structures (since a structure is a custom data type).

Declaration and initialization of a pointer looks like this:

struct <name_of_struct>
{
    <field_of_struct>;
};

struct <name_of_struct>* <name_of_pointer>;

If <name_of_pointer> is a pointer to a structure,
then *(<name_of_pointer>) is the structure itself.

To access the fields of a structure through a pointer, you must use the -> operator.

Note

"->" is an analogue of the structure access operator .

main.c

main.c

copy
12345678910111213141516171819202122
#include <stdio.h> // structure declaration struct Point { int x; int y; }; int main() { // create a structure variable of Point type struct Point p1; p1.x = 10; p1.y = 20; // create a pointer to a structure of type Point and assign it the address of variable p1 struct Point* ptr = &p1; // Access structure members via pointer by `->` operator printf("Coordinates: (%d, %d)\n", ptr->x, ptr->y); return 0; }
Compito

Swipe to start coding

  1. Declare structure Human which contains two fields name and age;
  2. Initialize the structure worker and fill the fields;
  3. Declare and initialize a pointer ptr to a worker;
  4. Display information about the worker.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 2
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

close

Awesome!

Completion rate improved to 4.17

book
Pointers to Structs

The C programming language allows you to create pointers not only to regular data types but also to structures (since a structure is a custom data type).

Declaration and initialization of a pointer looks like this:

struct <name_of_struct>
{
    <field_of_struct>;
};

struct <name_of_struct>* <name_of_pointer>;

If <name_of_pointer> is a pointer to a structure,
then *(<name_of_pointer>) is the structure itself.

To access the fields of a structure through a pointer, you must use the -> operator.

Note

"->" is an analogue of the structure access operator .

main.c

main.c

copy
12345678910111213141516171819202122
#include <stdio.h> // structure declaration struct Point { int x; int y; }; int main() { // create a structure variable of Point type struct Point p1; p1.x = 10; p1.y = 20; // create a pointer to a structure of type Point and assign it the address of variable p1 struct Point* ptr = &p1; // Access structure members via pointer by `->` operator printf("Coordinates: (%d, %d)\n", ptr->x, ptr->y); return 0; }
Compito

Swipe to start coding

  1. Declare structure Human which contains two fields name and age;
  2. Initialize the structure worker and fill the fields;
  3. Declare and initialize a pointer ptr to a worker;
  4. Display information about the worker.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

close

Awesome!

Completion rate improved to 4.17

Scorri per mostrare il menu

some-alt