Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Åtkomst till Struct-Fält | Introduktion till structs
C-Strukturer
Avsnitt 1. Kapitel 5
single

single

Åtkomst till Struct-Fält

Svep för att visa menyn

När vi har skapat en struktur för att beskriva ett kemiskt element kan vi slutligen interagera med den.

För att komma åt informationen som finns i strukturen måste vi använda operatorn ..

Operatorn . gör det möjligt att direkt komma åt strukturens element (fält).

<struct>.<field>;

På detta sätt får vi åtkomst till en medlem i strukturen.

Låt oss försöka visa information om kisel på skärmen:

main.c

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; }
Note
Notering

Pekare används också ofta för att komma åt strukturens fält, men vi kommer att ta upp det senare.

Om du använder det andra sättet att skapa en strukturvariabel behöver du tilldela ett värde till silicon.name med hjälp av strcpy(), och sedan visa det med printf().

main.c

main.c

12345678910111213141516171819202122232425
#include "stdio.h" #include <string.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
Notering

Funktionen strcpy() används för att kopiera den angivna ("Si") strängen till fältet name[3] i den skapade variabeln.

Uppgift

Svep för att börja koda

Du har en Product-struktur som lagrar information om en produkt i en butik: dess namn, pris och antal. Din uppgift är att beräkna den totala kostnaden för en produkt genom att multiplicera dess pris med dess antal.

Funktionen productCost tar en Product som parameter.

  1. Inuti productCost, multiplicera fältet price med fältet quantity.
  2. I main, skapa ett Product-objekt med namn, pris och antal.
  3. Använd printf för att visa produktens namn, pris, antal och total kostnad (genom att anropa productCost).

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 5
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

some-alt