Register C Initial Value Declare Static Variable Again as Auto
Learn Well-nigh Static Variable in C [With Coding Example]
Oct 21, 2020
In your programming journey, you lot might have worked effectually most of the variables. They are a very important aspect for whatsoever developer, as declaring a variable determines the size, layout, range of values stored in the memory, and the set up of operations to be applied to it. Information technology is the proper name given to a storage expanse that a program tin can manipulate. In this article, we volition discuss i of the most important variables in C, i.e., the static variable .
Static keyword in C is used quite oftentimes. Ane thing that is often confused by most of the programmers is how local and global variables affect static. In each case, the static keyword works differently in terms of where the data is stored and how it behaves throughout the program. The following are the primary uses of a static keyword:
i. A local variable in a function or static local variable: Visibility is the same as the automatic local variables.
ii. Global variable in a module or static global variable: Declared at the top of a programme.
iii. A function in a module or static function: It exists throughout the programme.
4. Fellow member variable or static member variable: Accessed by all the instances of a course.
five. A method or static method: Accessed past all the instances of a class.
Nosotros will look into all the 3 utilise cases and how they change with the storage surface area of the variable and enhance the quality of code.
What is a Static Variable?
In programming, a static variable is the one allocated "statically," which means its lifetime is throughout the plan run. Information technology is declared with the 'static' keyword and persists its value across the role calls.
Syntax:
The syntax of a static variable is:
static data_type variable_name;
Static Variable Declaration
When a static variable is declared, a copy of it is created. The primary purpose these are used in place of a local variable is that they retain the value assigned in the scope where it is present. The developer does not demand to initialize the variable once more and again in the new scope of a program. It exists throughout the unabridged plan.
Static, in full general, is a storage form specifier applied to whatsoever data type. Information technology directs the compiler to limit a variable or function in the program scope and persists throughout the lifetime of the program. This property allows static to be encapsulated or subconscious variables from the rest of the program preventing any unintended access. The developer can control how variables are accessed within a module. This is a expert programming practise.
Read: Tiptop 130+ Coffee Interview Questions & Answers
Static Variable in a Program
· A static variable remains in the memory space during the execution of the entire code.
· The default initialization value of a static variable is zero, even if it is not assigned, which is non the example in a local variable.
· Information technology is mandatory to initialize the static variable using the static keyword in C else it volition render an mistake.
· The static variable is only initialized the first time when a function is called.
· In a static variable , the retentiveness of a static variable is allocated.
· A global static variable is non accessible outside the program.
Bones Programme on Static Variable in C
#include <stdio.h>
int main()
{
printf("%d",func());
printf("\n%d",func());
return 0;
}
int func()
{
static int count=0;
count++;
return count;
}
Hither in this lawmaking, the count variable is alleged as a static variable . With every call of the func(), the value of count updates to 1. In the side by side role call, the count variable value becomes 2. Thus, the value of the static variable persists in the role telephone call.
Output:
i
two
Deviation Between Local and Static Variable
Both local and static variables are used interchangeably in a program. Here are some central differences between the ii:
| Distinguishing Points | Local Variable | Static Variable |
| Variable Keyword Announcement | 1. It is alleged by an automated variable, e.g., int a = 1. | 1. It is declared by a static variable , due east.g., static int a = one. |
| Variable Announcement | ii. It is declared within the function. | two. It is declared either inside or outside the function. |
| Variable Creation | 3. Information technology is created every time a part is called. | 3. It is created for the 1st function call merely, and the aforementioned variable is used for further call. |
| Variable Initialisation | 4. It is initialized every fourth dimension a function is called. | 4. It is initialized merely once in a program. |
| Variable Default Value | five. If not initialized, a garbage value is stored in the variable. | 5. If not initialized, the value 0 is stored in static past default. |
| Variable Termination | 6. When the role ends, it terminates. | 6. If alleged inside a office, it is accessible in that function only. The scope is express to that role, and its lifetime is until the programme terminates. If declared exterior the part, the variable will exist global and attainable by any function in the file. The scope is the file, but the lifetime is until the program terminates. |
With this table, it is clear why static variables are preferred to local variables.
Code Comprising Both Local and Static Variable
#include <stdio.h>
int main() {
car int a = -15;
static int b = five;
printf("Value of the auto variable a is %d\n", a);
printf("Value of the static variable b is %d\north",b);
if(a!=0)
printf("The sum of static and auto variable is %d\n",(b+a));
return 0;
}
Programme Output:
Value of the motorcar variable is -15
Value of the static variable is 5
The sum of the static and auto variable is -10
Besides Read: C Project Ideas
Summary
The static keyword is used widely for many features that it offers in C programming. Its chief utilise is to limit the telescopic of variables defined in a function or module. Developers can experience security, every bit the variables and functions can be hidden from the external program through the utilize of the static variable . In many modern object-oriented languages, the use of static is replaced by individual and public.
If you are interested to larn more than and need mentorship from industry experts, check out upGrad & IIIT Banglore's PG Diploma in Total-Stack Software Evolution.
Prepare for a Career of the Future
INDUSTRY TRUSTED LEARNING - INDUSTRY-RECOGNIZED CERTIFICATION.
Enroll Today
Source: https://prod-mpc.upgrad.com/blog/static-variable-in-c/
0 Response to "Register C Initial Value Declare Static Variable Again as Auto"
ارسال یک نظر