*   >> läser Utbildning artiklar >> science >> programming

Grunderna i C Identifier Scope

Grunderna i C Identifier Scope C Tutorials från Roots - Del 19 Inledning Detta är en del 19 av min serie, C Tutorials från Roots. I denna del av serien, tittar vi på vad som kallas identifierare omfattning. Ett block är en uppsättning uttalanden inneslutna i klammerparenteser, som är {och}. Frågan här är: om en identifierare deklareras utanför ett block kommer det att framgå i blocket? Å andra sidan, om det deklareras inuti blocket, kommer det att ses utanför blocket? Block förekommer inte godtyckligt i koden. Det finns vissa konstruktioner som har block.

Följande konstruktioner har block: om, för och funktion. Vi har sett alla dessa konstruktioner. För resten av den här guiden, tittar vi på om, för och funktions konstruktioner och hur identifierare omfattning tillämpas på dem. Obs: Om du inte kan se koden, eller om du tror att något saknas (bruten länk, bild frånvarande), bara att kontakta mig på [email protected]. Det vill säga, kontakta mig för minsta problem du har om vad du läser.

If Construct och Identifier Scope Läs och prova följande kod: #include int main () {int myInt = 40; if (25 == 25) {printf ("% i", myInt); int herInt = 50; } //Printf ("% i", herInt); återvända 0; } If villkoret är om 25 är lika med 25. Nu detta tillstånd kommer alltid att återgå sant, och så om blocket kommer alltid att utföras. Utanför if-blocket är identifieraren, myInt deklarerats och tilldelas värdet 40. Inne i if-blocket finns ett uttalande för att skriva ut myInt. Denna identifierare förklarades utanför om block; om det ses inuti blocket, kommer det att skrivas ut.

Om du försökte koden skulle du har märkt att värdet av myInt trycktes. Nu, inne i blocket, en ny identifierare, herInt deklareras och hade ett värde tilldelas det. Utanför blocket, det är en kommentar. Denna kommentar är faktiskt ett uttalande föregås av kommentaren denotation, //. På grund av denna föregående tecken, är uttalandet inte verkställts. Om du tar bort kommentaren beteckning och åter försöka koden, kommer följande förklaring följer: Den herInt identifierare deklareras inuti if-blocket.

Nu, om det ses utanför blocket, sedan "sista" uttalande (utan kommentar beteckning) skulle skriva sitt värde. Ta bort //symbolen och försök koden om du inte redan har gjort det, och notera att den sista utskrifts uttalande inte skulle fungera, och du skulle få ett felmeddelande eller felmeddelanden vid kompileringen. Funktions Construct och Identifier Omfattning Följande kod har skrivits liknande den ovan

Page   <<       [1] [2] [3] >>
Copyright © 2008 - 2016 läser Utbildning artiklar,https://utbildning.nmjjxx.com All rights reserved.