Course Content
C Structs
C Structs
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.
This way we get access to a member of the structure.
Let's try to display information about silicon on the screen:
main
#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
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
#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
The
strcpy()
function is used to copy the specified (“Si”) string to thename[3]
field of the created variable.
Task
- Display the valence of natrium;
- Display the atomic mass of aluminum;
- Display the atomic number of zinc.
Thanks for your feedback!
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.
This way we get access to a member of the structure.
Let's try to display information about silicon on the screen:
main
#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
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
#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
The
strcpy()
function is used to copy the specified (“Si”) string to thename[3]
field of the created variable.
Task
- Display the valence of natrium;
- Display the atomic mass of aluminum;
- Display the atomic number of zinc.
Thanks for your feedback!
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.
This way we get access to a member of the structure.
Let's try to display information about silicon on the screen:
main
#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
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
#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
The
strcpy()
function is used to copy the specified (“Si”) string to thename[3]
field of the created variable.
Task
- Display the valence of natrium;
- Display the atomic mass of aluminum;
- Display the atomic number of zinc.
Thanks for your feedback!
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.
This way we get access to a member of the structure.
Let's try to display information about silicon on the screen:
main
#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
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
#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
The
strcpy()
function is used to copy the specified (“Si”) string to thename[3]
field of the created variable.
Task
- Display the valence of natrium;
- Display the atomic mass of aluminum;
- Display the atomic number of zinc.