Accessing 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
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; }
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
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; }
The strcpy() function is used to copy the specified (“Si”) string to the name[3] field of the created variable.
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.
- Inside
productCost, multiply thepricefield by thequantityfield. - In
main, create a Product object with a name, price, and quantity. - Use
printfto display the product’s name, price, quantity, and total cost (by callingproductCost).
Solución
¡Gracias por tus comentarios!
single
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
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?
Awesome!
Completion rate improved to 4.17
Accessing 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
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; }
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
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; }
The strcpy() function is used to copy the specified (“Si”) string to the name[3] field of the created variable.
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.
- Inside
productCost, multiply thepricefield by thequantityfield. - In
main, create a Product object with a name, price, and quantity. - Use
printfto display the product’s name, price, quantity, and total cost (by callingproductCost).
Solución
¡Gracias por tus comentarios!
single