Difference between revisions of "C-and-C++/C2/Scope-Of-Variables/English"
(Created page with ''''Title of script''': Constructors and Destructors '''Author: '''Ashwini R. Patil '''Keywords: Constructors, Destructors, Video tutorial''' {| style="border-spacing:0;" | s…') |
|||
(5 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | '''Title of script''': | + | '''Title of script''': Scope of variables |
'''Author: '''Ashwini R. Patil | '''Author: '''Ashwini R. Patil | ||
− | '''Keywords: | + | '''Keywords: Scope of variables, global variable, local variable, Video tutorial''' |
Line 10: | Line 10: | ||
| style="border-top:0.002cm solid #000000;border-bottom:0.002cm solid #000000;border-left:0.002cm solid #000000;border-right:none;padding:0.097cm;"| <center>'''Visual Cue'''</center> | | style="border-top:0.002cm solid #000000;border-bottom:0.002cm solid #000000;border-left:0.002cm solid #000000;border-right:none;padding:0.097cm;"| <center>'''Visual Cue'''</center> | ||
| style="border:0.002cm solid #000000;padding:0.097cm;"| <center>'''Narration'''</center> | | style="border:0.002cm solid #000000;padding:0.097cm;"| <center>'''Narration'''</center> | ||
+ | |||
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 1 | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 1 | ||
− | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Welcome to the spoken tutorial on | + | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Welcome to the spoken tutorial on '''Scope of variables in C and C++'''. |
|- | |- | ||
Line 22: | Line 23: | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| In this tutorial we will learn, | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| In this tutorial we will learn, | ||
− | + | What is the Scope of variables. | |
− | + | What is a Global variable. | |
− | + | What is a Local variable. | |
+ | |||
+ | Few examples. | ||
We will also see some common errors and their solutions. | We will also see some common errors and their solutions. | ||
Line 39: | Line 42: | ||
'''Ubuntu Operating System''' version 11.04, | '''Ubuntu Operating System''' version 11.04, | ||
− | '''g++''' '''Compiler''' version 4.6.1 | + | '''gcc''' and '''g++''' '''Compiler''' version 4.6.1 |
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 4 | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 4 | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Let us start with the introduction to | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Let us start with the introduction to the scope of variables. |
− | + | It is the region of code within which the variable can be accessed. | |
− | + | Depending on its type and place of declaration it is divided into two catagories: | |
− | + | Global Variable. | |
+ | And | ||
+ | Local Variable. | ||
− | + | |- | |
+ | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Type: | ||
− | |||
− | + | '''<nowiki>#include<stdio.h></nowiki>''' | |
− | |||
− | |||
− | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now we will see an example. | |
− | + | I have already typed the program on the editor, | |
− | + | ||
− | + | ||
− | + | ||
− | I have already typed the | + | |
− | + | Let me open it. | |
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Point the cursor | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Point the cursor | ||
− | ''' | + | '''scope.c''' |
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Note that our filename is '''scope.c.''' |
Let me explain the code now. | Let me explain the code now. | ||
Line 82: | Line 81: | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | ||
− | '''<nowiki>#include < | + | '''<nowiki>#include <stdio.h></nowiki>''' |
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| This is our '''header file.''' | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| This is our '''header file.''' | ||
Line 88: | Line 87: | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | ||
− | ''' | + | '''int a=5;''' |
− | + | ||
− | + | '''int b=2;''' | |
− | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right: | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Here we have declared two global variables '''a and b.''' |
− | ''' | + | And we have '''initialized''' them by assigning values as '''5 and 2.''' |
− | + | ||
+ | A global variable is available to all functions in your program. | ||
+ | These are declared outside any functions above '''main()''' funtion. | ||
+ | '''These have a Global scope.''' | ||
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | ||
− | ''' | + | '''void add()''' |
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| ''' | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Here we have declared a '''function''' '''add '''without''' arguments.''' |
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | ||
− | ''' | + | '''int sum;''' |
− | + | ||
− | + | '''sum = a+b;''' | |
+ | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Here '''sum''' is a local variable'''.''' | ||
− | + | It is declared inside the function''' add.''' | |
− | + | ||
− | + | A local variable is available only to the function inside which it is declared. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | These variables are declared inside a block. | ||
+ | '''These have local scope.''' | ||
+ | The sum of''' a '''and''' b '''will be stored in the variable''' sum.''' | ||
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | ||
− | ''' | + | '''printf("Sum is %d\n",c);''' |
− | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Here we print the '''sum.''' | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | Here we | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | ''' | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
Line 174: | Line 139: | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight | ||
− | ''' | + | '''add();''' |
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| The '''add''' function is called and then executed. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | ''' | + | |
− | + | ||
− | + | ||
− | + | ||
|- | |- | ||
Line 195: | Line 146: | ||
'''return 0;''' | '''return 0;''' | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| And this is our return statement. |
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Click on save | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Click on save | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now Click on save. |
|- | |- | ||
Line 209: | Line 160: | ||
'''Ctrl, Alt and T''' keys simultaneously | '''Ctrl, Alt and T''' keys simultaneously | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Please open the terminal by pressing '''Ctrl, Alt and T''' keys simultaneously | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Please open the terminal by pressing '''Ctrl, Alt and T''' keys simultaneously on your keyboard. |
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Type | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Type | ||
− | ''' | + | '''gcc scope.c -o sco''' |
To execute | To execute | ||
Line 220: | Line 171: | ||
Type | Type | ||
− | '''./ | + | '''./sco''' |
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| To compile | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| To compile type, |
− | ''' | + | '''gcc space scope.c space -o space sco''' |
+ | |||
+ | And '''press Enter''' | ||
To execute | To execute | ||
Line 229: | Line 182: | ||
Type | Type | ||
− | '''./ | + | '''./sco''' |
+ | |||
+ | '''press Enter''' | ||
|- | |- | ||
Line 235: | Line 190: | ||
'''Output''' | '''Output''' | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| The output is displayed as |
− | ''' | + | '''Sum of a and b is 7''' |
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| On the editor | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| On the editor | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| NOW LET US SEE HOW THE | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| NOW LET US SEE HOW TO EXECUTE THE SAME PROGRAM IN C++ |
Come back to our program | Come back to our program | ||
Line 253: | Line 208: | ||
'''.cpp''' | '''.cpp''' | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| First press '''shfit+ctrl '''and''' s '''keys simultaneously on your keyboard. |
− | + | Now Save the file''' '''with an''' '''extension. '''.cpp '''and click on''' SAVE''' | |
− | + | ||
− | Save the file''' '''with''' ''' | + | |
|- | |- | ||
− | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| | + | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Highlight header file |
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Let us change the header file as | |
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | |
'''iostream.''' | '''iostream.''' | ||
Line 279: | Line 224: | ||
'''using namespace std;''' | '''using namespace std;''' | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now include the '''using '''statement. |
+ | |||
+ | Click on '''Save'''. | ||
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| The | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| The declaration of global variable and local variable is same in C++. |
− | So no need to change anything | + | So no need to change anything. |
|- | |- | ||
Line 291: | Line 238: | ||
'''<nowiki>cout <<</nowiki>''' | '''<nowiki>cout <<</nowiki>''' | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now replace the '''printf '''statement with '''cout''' statement | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now replace the '''printf '''statement with the '''cout''' statement |
+ | |||
+ | |||
− | |||
|- | |- | ||
Line 299: | Line 247: | ||
'''%d\n''' | '''%d\n''' | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Delete the '''format specifier''' and ''''\n'''' |
− | + | Now delete the comma. | |
|- | |- | ||
Line 307: | Line 255: | ||
'''<nowiki><<</nowiki>''' | '''<nowiki><<</nowiki>''' | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Type two opening angle brackets.Delete the closing bracket. |
− | + | Again type two opening angle brackets and within the double quotes type backslash n. | |
− | + | '''Now click on Save.''' | |
− | + | '''Let us execute the program.''' | |
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| On the terminal | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| On the terminal | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Come back to the terminal. |
− | + | ||
− | Come back to the terminal. | + | |
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Type | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Type | ||
− | '''g++ | + | '''g++ scope.cpp -o sco1''' |
− | |||
− | |||
− | |||
− | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| To compile Type, | |
− | + | '''g++ space scope.cpp space -o space sco1''' | |
− | To execute, | + | Here we have''' sco1 '''because we don't want to''' '''overwrite the output parameter '''sco''' for the file''' scope.c''' |
+ | |||
+ | Now press''' Enter.''' | ||
+ | |||
+ | |- | ||
+ | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Type | ||
+ | |||
+ | '''./sco1''' | ||
+ | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| To execute, | ||
Type, | Type, | ||
− | '''./ | + | '''./sco1''' |
+ | |||
+ | And press''' Enter.''' | ||
|- | |- | ||
Line 345: | Line 298: | ||
'''output''' | '''output''' | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| The output is displayed as, |
− | '''Sum of a and b is | + | '''Sum of a and b is 7.''' |
+ | |||
+ | We can see that it is similar to our''' C '''code. | ||
|- | |- | ||
Line 357: | Line 312: | ||
'''int a = 2;''' | '''int a = 2;''' | ||
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now we will see some common errors which we can come across. | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now we will see some common errors which we can come across. | ||
+ | Come back to our program. | ||
Suppose here I will declare variable '''a''' again, | Suppose here I will declare variable '''a''' again, | ||
Line 362: | Line 318: | ||
Type | Type | ||
− | '''int a | + | '''int a''' and a '''(semicolon) ;''' |
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| On the terminal | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| On the terminal | ||
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Click on save. | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Click on save. | ||
+ | |||
+ | We have declared the variable '''a '''above the '''main '''function. | ||
+ | |||
+ | And after the '''add '''function. | ||
+ | |||
+ | Let us see what happens. | ||
Come back to the terminal. | Come back to the terminal. | ||
Line 375: | Line 337: | ||
'''Error''' | '''Error''' | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now compile as before. |
− | We see | + | We see errors |
+ | |||
+ | Redifinition of '''int a''' | ||
+ | |||
+ | '''int a''' previously defined here. | ||
+ | |||
+ | Come back to our program. | ||
'''a''' is a global variable. | '''a''' is a global variable. | ||
Line 385: | Line 353: | ||
We cannot declare the variable twice as it is already declared globally | We cannot declare the variable twice as it is already declared globally | ||
− | We can only declare '''variable a''' as a local variable | + | We can only declare '''variable a''' as a local variable. |
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| On the editor | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| On the editor | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Let us fix the error. |
− | + | ||
− | Let us fix the error. | + | |
|- | |- | ||
Line 397: | Line 363: | ||
'''int a = 2;''' | '''int a = 2;''' | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Delete this. |
|- | |- | ||
Line 405: | Line 371: | ||
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| On the terminal | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| On the terminal | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Let us execute. | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Let us execute again. |
Come back to our terminal. | Come back to our terminal. | ||
Line 411: | Line 377: | ||
|- | |- | ||
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| | ||
− | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| | + | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now compile as before |
+ | |||
+ | Execute as before. | ||
|- | |- | ||
Line 417: | Line 385: | ||
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Yes it is working. | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Yes it is working. | ||
− | + | This brings us to the end of this tutorial. | |
+ | |||
|- | |- | ||
− | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide | + | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 5 |
+ | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Let us summarize, | ||
+ | |||
+ | In this tutorial we learnt, | ||
+ | |||
+ | Scope of variables | ||
+ | |||
+ | Global variable | ||
+ | |||
+ | eg. int a = 5; | ||
+ | And | ||
+ | |||
+ | Local variable | ||
+ | |||
+ | eg. int sum; | ||
+ | |||
+ | |- | ||
+ | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 6 | ||
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| As an assignment, | | style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| As an assignment, | ||
Line 426: | Line 412: | ||
|- | |- | ||
− | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide | + | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 7 |
About the Spoken Tutorial Project | About the Spoken Tutorial Project | ||
Line 436: | Line 422: | ||
|- | |- | ||
− | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide | + | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 8 |
Spoken Tutorial Workshops | Spoken Tutorial Workshops | ||
Line 453: | Line 439: | ||
|- | |- | ||
− | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide Number | + | | style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide Number 9 |
Line 461: | Line 447: | ||
It is supported by the National Mission on Education through ICT, MHRD, Government of India. | It is supported by the National Mission on Education through ICT, MHRD, Government of India. | ||
− | More information on this Mission is available at: http://spoken-tutorial.org\NMEICT-Intro. | + | More information on this Mission is available at the link shown below: http://spoken-tutorial.org\NMEICT-Intro. |
|- | |- |
Latest revision as of 16:42, 5 February 2014
Title of script: Scope of variables
Author: Ashwini R. Patil
Keywords: Scope of variables, global variable, local variable, Video tutorial
|
|
Slide 1 | Welcome to the spoken tutorial on Scope of variables in C and C++. |
Slide 2
|
In this tutorial we will learn,
What is the Scope of variables. What is a Global variable. What is a Local variable. Few examples. We will also see some common errors and their solutions. |
Slide 3
|
To record this tutorial, I am using
Ubuntu Operating System version 11.04, gcc and g++ Compiler version 4.6.1 |
Slide 4 | Let us start with the introduction to the scope of variables.
It is the region of code within which the variable can be accessed. Depending on its type and place of declaration it is divided into two catagories: Global Variable. And Local Variable. |
Type:
|
Now we will see an example.
I have already typed the program on the editor, Let me open it. |
Point the cursor
scope.c |
Note that our filename is scope.c.
Let me explain the code now. |
Highlight
#include <stdio.h> |
This is our header file. |
Highlight
int a=5; int b=2; |
Here we have declared two global variables a and b.
And we have initialized them by assigning values as 5 and 2. A global variable is available to all functions in your program. These are declared outside any functions above main() funtion. These have a Global scope. |
Highlight
void add() |
Here we have declared a function add without arguments. |
Highlight
int sum; sum = a+b; |
Here sum is a local variable.
It is declared inside the function add. A local variable is available only to the function inside which it is declared. These variables are declared inside a block. These have local scope. The sum of a and b will be stored in the variable sum. |
Highlight
printf("Sum is %d\n",c); |
Here we print the sum. |
Highlight
int main() |
This is our main function. |
Highlight
add(); |
The add function is called and then executed. |
Highlight
return 0; |
And this is our return statement. |
Click on save | Now Click on save. |
Let us execute the program. | |
Open the terminal
Ctrl, Alt and T keys simultaneously |
Please open the terminal by pressing Ctrl, Alt and T keys simultaneously on your keyboard. |
Type
gcc scope.c -o sco To execute Type ./sco |
To compile type,
gcc space scope.c space -o space sco And press Enter To execute Type ./sco press Enter |
Highlight
Output |
The output is displayed as
Sum of a and b is 7 |
On the editor | NOW LET US SEE HOW TO EXECUTE THE SAME PROGRAM IN C++
Come back to our program |
Go to File menu
Click on Save as option Type .cpp |
First press shfit+ctrl and s keys simultaneously on your keyboard.
Now Save the file with an extension. .cpp and click on SAVE |
Highlight header file
|
Let us change the header file as
iostream. |
Type
using namespace std; |
Now include the using statement.
Click on Save. |
The declaration of global variable and local variable is same in C++.
So no need to change anything. | |
Type
cout << |
Now replace the printf statement with the cout statement
|
Delete
%d\n |
Delete the format specifier and '\n'
Now delete the comma. |
Type
<< |
Type two opening angle brackets.Delete the closing bracket.
Again type two opening angle brackets and within the double quotes type backslash n. Now click on Save. Let us execute the program. |
On the terminal | Come back to the terminal. |
Type
g++ scope.cpp -o sco1
|
To compile Type,
g++ space scope.cpp space -o space sco1 Here we have sco1 because we don't want to overwrite the output parameter sco for the file scope.c Now press Enter. |
Type
./sco1 |
To execute,
Type, ./sco1 And press Enter. |
Highlight
output |
The output is displayed as,
Sum of a and b is 7. We can see that it is similar to our C code. |
Errors
int a = 2; |
Now we will see some common errors which we can come across.
Come back to our program. Suppose here I will declare variable a again, Type int a and a (semicolon) ; |
On the terminal | Click on save.
We have declared the variable a above the main function. And after the add function. Let us see what happens. Come back to the terminal. |
Highlight
|
Now compile as before.
We see errors Redifinition of int a int a previously defined here. Come back to our program. a is a global variable. It has a global scope. We cannot declare the variable twice as it is already declared globally We can only declare variable a as a local variable. |
On the editor | Let us fix the error. |
Delete
int a = 2; |
Delete this. |
Click on save | Click on save. |
On the terminal | Let us execute again.
Come back to our terminal. |
Now compile as before
Execute as before. | |
Yes it is working.
This brings us to the end of this tutorial.
| |
Slide 5 | Let us summarize,
In this tutorial we learnt, Scope of variables Global variable eg. int a = 5; And Local variable eg. int sum; |
Slide 6 | As an assignment,
Write a program to print the difference of two numbers. |
Slide 7
About the Spoken Tutorial Project |
Watch the video available at the link shown .
It summarises the Spoken Tutorial project. If you do not have good bandwidth, you can download and watch it. |
Slide 8
Spoken Tutorial Workshops
|
The Spoken Tutorial Project Team,
Conducts workshops using spoken tutorials . Gives certificates to those who pass an online test . For more details, please write to, contact@spoken-tutorial.org |
Slide Number 9
|
Spoken Tutorial Project is a part of the Talk to a Teacher project.
It is supported by the National Mission on Education through ICT, MHRD, Government of India. More information on this Mission is available at the link shown below: http://spoken-tutorial.org\NMEICT-Intro. |
This is Ashwini Patil from IIT Bombay signing off
Thank You for joining. |