Hem Personliga finanser Grunderna i Structure for C Programming - dummies

Grunderna i Structure for C Programming - dummies

Innehållsförteckning:

Video: Begrepp inom programmering 2024

Video: Begrepp inom programmering 2024
Anonim

Du kan tänka på C-programmeringsspråksstrukturen som en multivariabel, eller flera variabler som rullas in i en. Du använder strukturer för att lagra eller få tillgång till komplex information. På så sätt kan du behålla olika int, char, floatvariabler, och även arrayer, allt i ett snyggt paket.

Grunderna för struct

En struktur är inte en variabel typ. Tänk istället på det som en ram som innehåller flera variabla typer. På många sätt liknar en struktur en post i en databas. Till exempel:

Namn Ålderspel skuld

Dessa tre objekt kan vara fält i en databasrekord, men de kan också vara medlemmar i en struktur: Namnet skulle vara en sträng; Ålder, ett heltal; och Gambling Debt, ett osignerat flytande poängvärde. Så här är en sådan post som en struktur i C:

struct record {char name [32]; int ålder; float skuld;};

struct är ett C-språkord som introducerar, definierar eller skapar en ny struktur.

posten är namnet på den nya strukturen som skapas.

Inom de krökta parenteserna bor strukturens medlemmar, variablerna i den angivna strukturen. Poststrukturen innehåller tre medlemsvariabler: ett strängnamn, en namngiven ålder och ett float-värde, skuld.

För att använda strukturen måste du deklarera en strukturvariabel för den strukturtyp du skapade. Till exempel:

struktural record human;

Denna rad deklarerar en ny variabel av poststrukturen. Den nya variabeln heter mänsklig .

Strukturvariabler kan också deklareras när du definierar strukturen själv. Till exempel:

struct record {char name [32]; int ålder; float skuld;} mänsklig;

Dessa uttalanden definierar rekordstrukturen och deklarerar en rekordstrukturvariabel, mänsklig . Multipla variabler av den här strukturtypen kan också skapas:

struct record {char name [32]; int ålder; float skuld;} bill, mary, dan, susie;

Fyra rekordstrukturevariabler skapas i det här exemplet. Varje variabel har tillgång till de tre medlemmarna som definieras i strukturen.

För att komma åt medlemmar i en strukturvariabel använder du en period, som är medlemsoperatören . Den ansluter strukturvariabelnamnet med ett medlemsnamn. Till exempel:

printf ("offer:% sn", bill. Namn);

Detta uttalande hänvisar namnet medlemmen i strukturfältet bill . En char array, den kan användas i din kod som alla andra char array. Andra medlemmar i strukturvariabeln kan också användas som deras enskilda motsvarigheter:

dan.ålder = 32;

Så här fyller du i en struktur

Som med andra variabler kan du tilldela värden till en strukturvariabel när den skapas. Du måste först definiera strukturtypen och sedan deklarera en strukturvariabel med dess förinställda medlemsvärden. Se till att de förinställda värdena matchar ordningen och typen av medlemmar som definieras i strukturen, som visas i deklarationen av en initialiserad struktur.

FÖRKLARA EN INITIALISERAD STRUKTUR

#include int main () {struct president {char name [40]; int år;}; struct president först = {"George Washington", 1789}; printf ("Den första presidenten var% sn", först. namn); printf ("Han invigdes i% dn", första året); returnera (0);}

Övning 1 : Skapa ett nytt program genom att skriva källkoden från deklarera en initialiserad struktur till redigeraren. Bygg och kör.

Du kan också deklarera en struktur och initiera den i ett uttalande:

struct president {char name [40]; int år;} först = {"George Washington", 1789};

Övning 2 : Ändra din källkod från övning 1 så att strukturen och variabeln deklareras och initialiseras som ett uttalande.

Även om du kan deklarera en struktur och initiera en strukturvariabel som visas, kan du bara komma undan med det där tricket en gång. Du kan inte använda tekniken för att deklarera den andra strukturvariabeln, vilket måste göras på det traditionella sättet, som visas i deklarationen av en initialiserad struktur.

Övning 3 : Lägg till en annan variabel för strukturstrukturen, för det andra till din kod, initiera den strukturen med information om den andra presidenten, John Adams, som invigdes 1797. Visa innehållet i båda strukturerna.

Så här skapar du en rad olika strukturer

Skapa enstaka strukturvariabler, en efter en, är lika tråkig och slösad som att skapa en serie av en viss variabel typ. Lösningen för flera strukturer är densamma som för flera individuella variabler: en array.

En strukturuppsättning förklaras så här:

struct scorespelare [4];

Detta uttalande förklarar en rad olika resultatstrukturer. Arrayen är namngiven spelare, och den innehåller fyra strukturvariabler som dess element.

Konstruktionerna i arrayen nås genom att använda en kombination av array och strukturnotering. Till exempel:

spelare [2]. namn

Variabeln i föregående rad öppnar namnet medlem i det tredje elementet i spelarstrukturstrukturen. Ja, det är det tredje elementet eftersom det första elementet skulle refereras så här:

spelare [0]. namn

Arrays börjar numrera med elementet 0, inte element 1.

Linje 10 i Arrays of Structures förklarar en uppsättning av fyra poängstrukturer. Arrayen är namngiven spelare. Linjerna 13 till 19 fyller varje struktur i matrisen. Linjerna 21 till och med 27 visar varje strukturens medlemsvärden.

STRATEGORIERNA

#include int main () {struct poäng {char name [32]; int poäng;}; struct scores spelare [4]; int x; för (x = 0; x <4; x ++) {printf ("Ange spelare% d:", x + 1); scanf ("% s", spelare [x].namn); printf ("Ange deras poäng:"); scanf ("% d", och spelare [x]. poäng);} sätter ("Player Info"); printf ("# tNametScoren"); för (x = 0; x <4; x ++) {printf ("% dt% st% 5dn", x + 1, spelare [x]. namn, spelare [x].

Övning 4 : Skriv källkoden från Array of Structures till din redaktör. Bygg och kör programmet. Försök att hålla poängen till färre än fem siffror så att de stämmer ordentligt.

Övning 5 : Lägg till kod till Arrays of Structures så att visning av strukturer sorteras med högsta poäng som listas först. Ja, du kan göra det här. Att sortera en rad strukturer fungerar precis som att sortera någon annan matris.

Här är ett tips: Lösningens linje 27 ser ut så här:

spelare [a] = spelare [b];

Du kan byta strukturelementelementen precis som du kan byta alla matriselement. Du behöver inte byta strukturvariabelns medlemmar.

Grunderna i Structure for C Programming - dummies

Redaktörens val

Nätverksenheter och tjänster Översikt för certifikatprov på CCENT-dummies

Nätverksenheter och tjänster Översikt för certifikatprov på CCENT-dummies

Du kan vara säker på att få några frågor om certifieringsexamen som testar din kunskap om typer av enheter och olika nätverkstjänster. Nedan följer några viktiga punkter att komma ihåg om enheter och tjänster: Nätverksenheter Hubb: Ett nav är en lag 1-enhet som används för att ansluta system tillsammans. När ...

OSI-modell för CCENT-certifieringsexamen - dummies

OSI-modell för CCENT-certifieringsexamen - dummies

Certifieringen certifierar dig kraftigt på OSI-modellen och olika protokoll och enheter som körs på varje lager av OSI-modellen. I följande tabell granskas OSI-modellen genom att ge dig en beskrivning av varje lager och exempel på protokoll och enheter som körs i varje lager. Layer Beskrivning Exempel 7. Applikation ...

OSI-modell för Cisco ICND1-certifieringsexamen - dummies

OSI-modell för Cisco ICND1-certifieringsexamen - dummies

Cisco ICND1-certifieringsexamen testa dig kraftigt på OSI modell och de olika protokoll och enheter som körs i varje lager av OSI-modellen. Följande granskar OSI-modellen genom att ge dig en beskrivning av varje lager och exempel på protokoll och enheter som körs i varje lager. Layer Beskrivning Exempel 7. Applikation ...

Redaktörens val

Hur man skalar på skifferelement i kantfilm - dummies

Hur man skalar på skifferelement i kantfilm - dummies

Skalar ett element i Adobe Edge Animate betyder i huvudsak att du kan ändra storleken på ett element samtidigt som dess proportioner hålls konsekventa om du vill. Du kan: Skalelement med verktyget Transform Skalaelement från Egenskaper-panelen Skalning med verktyget Transform Om du föredrar att använda en klicka-och-dra-metod för skalering ...

Hur man arbetar med mallar i Adobe Edge Animate - dummies

Hur man arbetar med mallar i Adobe Edge Animate - dummies

Mallar introducerades i Edge Animate 2. 0. Denna funktion tar bort nödvändigheten att återuppfinna hjulet varje gång du vill starta en ny komposition. Visst kan du alltid starta en ny komposition från en sparad fil, men Mallar gör att du kan starta ett nytt projekt som redan innehåller attribut och element som du vill ha.

Keyframes Modes in Edge Animation - dummies

Keyframes Modes in Edge Animation - dummies

Keyframe-verktyg i Edge Animate finns till höger om Play-kontrollerna. För att skapa nyckelfiler automatiskt måste du först aktivera nyckelbilder genom att klicka på den röda stoppklockans ikon. Som standard, när du startar en ny animering, är Stopwatch rött men har gråa linjer som löper genom det (som visat). Här är standardstatus för ...

Redaktörens val

Hur man tolkar figurativt språk för GED RLA-dummiesna

Hur man tolkar figurativt språk för GED RLA-dummiesna

Författare använder språk antingen bokstavligt eller figurativt . GED Reasoning Through Language Arts testet kommer att ha några frågor för att testa din förmåga att identifiera skillnaden. En NASA-vetenskapsman kan beskriva en asteroid väldigt bokstavligt: ​​består huvudsakligen av vatten, blandat med vissa stenar och mindre fasta fragment. Eller kan han eller hon skriva figurativt och beskriva ...

Hur (och var) ska schemalägga för att ta GED-dummiesna

Hur (och var) ska schemalägga för att ta GED-dummiesna

För att ta GED test, schemalägger du det baserat på tillgängliga testdatum. Varje stat eller lokalt testcenter ställer in sitt eget schema för GED-testet, vilket innebär att ditt tillstånd bestämmer hur och när du kan ta varje avsnitt av testet. Det bestämmer också hur ofta du kan återta en misslyckad ...

Hur man förbereder sig på GED RLA Extended Response - dummies

Hur man förbereder sig på GED RLA Extended Response - dummies

Uppsats för utvidgad respons på GED Reasoning Through Language Arts-testet kräver några mycket specifika färdigheter, allt från grammatik och korrekt språkanvändning till förståelse och analysförmåga. Om du någonsin har haft ett argument om vem som har det bästa laget eller vilken arbetsgivare är bättre, vet du redan hur man bedömer argument och svarar. ...