Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Accessing Struct Fields | Introduction to Structs
C Structs

bookAccessing Struct Fields

After we have created a structure to describe a chemical element, we can finally interact with it.

In order to access the information contained in the structure, we must use the . operator.

The . operator allows us to access the elements (fields) of the structure directly.

<struct>.<field>;

This way we get access to a member of the structure.

Let's try to display information about silicon on the screen:

main.c

main.c

copy
123456789101112131415161718192021
#include "stdio.h" struct chemicalElement { char name[3]; int atomicNumber; int valency; double mass; }; int main() { struct chemicalElement silicon = { "Si", 14, 4, 28.08 }; printf("Name: %s\n", silicon.name); printf("Atomic Number: %d\n", silicon.atomicNumber); printf("Valency: %d\n", silicon.valency); printf("Mass: %f", silicon.mass); return 0; }
Note
Note

Pointers are also widely used to access structure fields, but we'll cover that later.

If you used the second method of creating a struct-variable, you need to use the srtcopy() function to output silicon.name.

main.c

main.c

copy
123456789101112131415161718192021222324
#include "stdio.h" struct chemicalElement { char name[3]; int atomicNumber; int valency; double mass; } silicon; int main() { strcpy(silicon.name,"Si"); // using `strcpy()` silicon.atomicNumber = 14; silicon.valency = 4; silicon.mass = 28.08; printf("Name: %s\n", silicon.name); printf("Atomic Number: %d\n", silicon.atomicNumber); printf("Valency: %d\n", silicon.valency); printf("Mass: %f", silicon.mass); return 0; }
Note
Note

The strcpy() function is used to copy the specified (“Si”) string to the name[3] field of the created variable.

Tarea

Swipe to start coding

You have a Product structure that stores information about a product in a store: its name, price, and quantity. Your task is to calculate the total cost of a product by multiplying its price by its quantity.

The function productCost takes a Product as a parameter.

  1. Inside productCost, multiply the price field by the quantity field.
  2. In main, create a Product object with a name, price, and quantity.
  3. Use printf to display the product’s name, price, quantity, and total cost (by calling productCost).

Solución

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 1. Capítulo 5
single

single

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

Can you show me an example of how to use the `.` operator with a struct?

What does the `srtcopy()` function do?

How do I display all the fields of the silicon struct?

close

Awesome!

Completion rate improved to 4.17

bookAccessing Struct Fields

Desliza para mostrar el menú

After we have created a structure to describe a chemical element, we can finally interact with it.

In order to access the information contained in the structure, we must use the . operator.

The . operator allows us to access the elements (fields) of the structure directly.

<struct>.<field>;

This way we get access to a member of the structure.

Let's try to display information about silicon on the screen:

main.c

main.c

copy
123456789101112131415161718192021
#include "stdio.h" struct chemicalElement { char name[3]; int atomicNumber; int valency; double mass; }; int main() { struct chemicalElement silicon = { "Si", 14, 4, 28.08 }; printf("Name: %s\n", silicon.name); printf("Atomic Number: %d\n", silicon.atomicNumber); printf("Valency: %d\n", silicon.valency); printf("Mass: %f", silicon.mass); return 0; }
Note
Note

Pointers are also widely used to access structure fields, but we'll cover that later.

If you used the second method of creating a struct-variable, you need to use the srtcopy() function to output silicon.name.

main.c

main.c

copy
123456789101112131415161718192021222324
#include "stdio.h" struct chemicalElement { char name[3]; int atomicNumber; int valency; double mass; } silicon; int main() { strcpy(silicon.name,"Si"); // using `strcpy()` silicon.atomicNumber = 14; silicon.valency = 4; silicon.mass = 28.08; printf("Name: %s\n", silicon.name); printf("Atomic Number: %d\n", silicon.atomicNumber); printf("Valency: %d\n", silicon.valency); printf("Mass: %f", silicon.mass); return 0; }
Note
Note

The strcpy() function is used to copy the specified (“Si”) string to the name[3] field of the created variable.

Tarea

Swipe to start coding

You have a Product structure that stores information about a product in a store: its name, price, and quantity. Your task is to calculate the total cost of a product by multiplying its price by its quantity.

The function productCost takes a Product as a parameter.

  1. Inside productCost, multiply the price field by the quantity field.
  2. In main, create a Product object with a name, price, and quantity.
  3. Use printf to display the product’s name, price, quantity, and total cost (by calling productCost).

Solución

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 1. Capítulo 5
single

single

some-alt