🔥Limited Offer: Get 50% OFFon AI & Full Stack Courses🔥
Back to C++ Notes
Topic #83

C++ Scope


Now that you understand how functions work, it is important to learn how variables act inside and outside of functions.

In C++, variables are only accessible inside the region they are created. This is called scope.


Local Scope

A variable created inside a function belongs to the local scope of that function, and can only be used inside that function:

Example

void myFunction() {
  // Local variable that belongs to myFunction

int x = 5;

  // Print the variable x
  cout << x;
}

int main() {

myFunction();
  return 0;
}

A local variable cannot be used outside the function it belongs to.

If you try to access it outside the function, an error occurs:

Example

void myFunction() {
  // Local variable that belongs to myFunction

int x = 5;
}

int main() {
  myFunction();

  // Print
the variable x in the main function
  cout << x;
  return 0;
}

Global Scope

A variable created outside of a function, is called a global variable and belongs to the global scope.

Global variables are available from within any scope, global and local:

Example

// Global variable x
int x = 5;

void myFunction() {
  //
We can use x here
  cout << x << "\n";
}

int main() {

myFunction();

  // We can also use x here
  cout << x;

return 0;
}

Naming Variables

If you operate with the same variable name inside and outside of a function, C++ will treat them as two separate variables; One available in the global scope (outside the function) and one available in the local scope (inside the function):

Example

// Global variable x
int x = 5;

void myFunction() {
  //
Local variable with the same name as the global variable (x)
  int x
= 22;
  cout << x << "\n"; // Refers to the local variable x
}

int main()
{
  myFunction();

  cout << x; // Refers to the global
variable x
  return 0;
}

However, you should avoid using the same variable name for both globally and locally variables as it can lead to errors and confusion.

In general, you should be careful with global variables, since they can be accessed and modified from any function:

Example

// Global variable x
int x = 5;

void myFunction() {

cout << ++x << "\n"; // Increment the value of x by 1 and print it
}

int
main() {
  myFunction();

  cout << x; // Print the
global variable x
  return 0;
}

// The value of
x is now 6 (no longer 5)

Conclusion

To sum up, use local variables (with good variable names) as much as you can. This will make your code easier to maintain and better to understand. However, you may find global variables when working on existing C++ programs or while collaborating with others. Therefore, it is good to understand how the scope works and how to use it effectively to make sure your code is clear and functional.

Want to go beyond the notes?

Join CodingNow 2.0's C++ course — live mentorship, real projects, and 100% placement support.

Enroll Now — Free Demo Available

C++ Scope – FAQs

Quick answers about learning C++ Scope in C++.

This free note from CodingNow 2.0 explains C++ Scope in C++ — concept, syntax and worked code examples you can copy, run and revise before interviews.
Yes. Every C++ topic on CodingNow 2.0, including C++ Scope, is 100% free with no signup required.
With focused practice, most students grasp C++ Scope in 1–3 days from these notes; pairing it with CodingNow 2.0's mentor-led course takes you to job-ready depth faster.
Use the code examples in this note, then ask doubts for free on the CodingNow 2.0 Community (/community) — expert instructors answer within 24 hours.
WhatsApp
Call NowEnroll Now