The scope of a variable refers to the range of variable validity, which is the code range that user-defined variables can use; it is closely related to the location of the variable definition.
Scope
describes variables from the perspective of space. According to different scopes, variables can be divided into local variables and global variables.
1. Local variables
Local variables are variables defined inside a function (or code block), also called internal variables, local A variable can only be accessed and used within the function (or code block) in which it is defined, and cannot be used by other functions.
The scope of a local variable is limited to the code block in which it is described: from the beginning of the description to the end of the code block. It is illegal to use such a variable after leaving the function.
Example:
int f1(int a) { int b,c; …… }a,b,c作用域 int f2(int x) { int y,z; }x,y,z作用域 main() { int m,n; }
Explanation: a is a formal parameter, b, c are general variables; within the scope of f1, a, b, c are valid, or a, b, c variables The scope is limited to f1. In the same way, the scope of x, y, z is limited to f2; the scope of m, n is limited to the main function.
Note that variables with the same name are not allowed in the same scope.
2. Global variables
Global variables are variables declared in the global environment. Its scope is from the definition point until the program End of file; it occupies storage units throughout the entire run of the program.
Global variables change the value of global variables in a function and can be shared by other functions; it is equivalent to transferring data between functions.
Example:
int a,b; void f1() { …… } float x,y; int fz() { …… } main() { …… }
Explanation: a, b, x, y are all external variables defined outside the function and are all global variables. However, x and y are defined after function f1, and there is no description of x and y in f1, so they are invalid in f1. a, b are defined at the beginning of the source program, so they can be used without explanation in f1, f2 and main.
Code example:
Input the length, width and height l,w,h of the cube. Find the volume and the areas of the three faces x*y, x*z, y*z.
#include <stdio.h> int s1,s2,s3;//全局变量 int vs( int a,int b,int c) { int v;//局部变量 v=a*b*c; s1=a*b; s2=b*c; s3=a*c; return v; } main() { int v,l,w,h;//局部变量 printf("\n分别输入长度l、宽度w和高度h:\n"); scanf("%d%d%d",&l,&w,&h); v=vs(l,w,h); printf("面积1为:%d,面积2为:%d,面积3为:%d\n",s1,s2,s3); printf("体积为:%d",v); }
Output:
The above is the detailed content of What is the scope of a variable. For more information, please follow other related articles on the PHP Chinese website!

C# is widely used in enterprise-level applications, game development, mobile applications and web development. 1) In enterprise-level applications, C# is often used for ASP.NETCore to develop WebAPI. 2) In game development, C# is combined with the Unity engine to realize role control and other functions. 3) C# supports polymorphism and asynchronous programming to improve code flexibility and application performance.

C# and .NET are suitable for web, desktop and mobile development. 1) In web development, ASP.NETCore supports cross-platform development. 2) Desktop development uses WPF and WinForms, which are suitable for different needs. 3) Mobile development realizes cross-platform applications through Xamarin.

The C#.NET ecosystem provides rich frameworks and libraries to help developers build applications efficiently. 1.ASP.NETCore is used to build high-performance web applications, 2.EntityFrameworkCore is used for database operations. By understanding the use and best practices of these tools, developers can improve the quality and performance of their applications.

How to deploy a C# .NET app to Azure or AWS? The answer is to use AzureAppService and AWSElasticBeanstalk. 1. On Azure, automate deployment using AzureAppService and AzurePipelines. 2. On AWS, use Amazon ElasticBeanstalk and AWSLambda to implement deployment and serverless compute.

The combination of C# and .NET provides developers with a powerful programming environment. 1) C# supports polymorphism and asynchronous programming, 2) .NET provides cross-platform capabilities and concurrent processing mechanisms, which makes them widely used in desktop, web and mobile application development.

.NETFramework is a software framework, and C# is a programming language. 1..NETFramework provides libraries and services, supporting desktop, web and mobile application development. 2.C# is designed for .NETFramework and supports modern programming functions. 3..NETFramework manages code execution through CLR, and the C# code is compiled into IL and runs by CLR. 4. Use .NETFramework to quickly develop applications, and C# provides advanced functions such as LINQ. 5. Common errors include type conversion and asynchronous programming deadlocks. VisualStudio tools are required for debugging.

C# is a modern, object-oriented programming language developed by Microsoft, and .NET is a development framework provided by Microsoft. C# combines the performance of C and the simplicity of Java, and is suitable for building various applications. The .NET framework supports multiple languages, provides garbage collection mechanisms, and simplifies memory management.

C# and .NET runtime work closely together to empower developers to efficient, powerful and cross-platform development capabilities. 1) C# is a type-safe and object-oriented programming language designed to integrate seamlessly with the .NET framework. 2) The .NET runtime manages the execution of C# code, provides garbage collection, type safety and other services, and ensures efficient and cross-platform operation.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SublimeText3 Linux new version
SublimeText3 Linux latest version

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.
