กฎขอบเขตเกี่ยวข้องกับปัจจัยต่อไปนี้ -
- การเข้าถึงตัวแปร
- ระยะเวลาการดำรงอยู่ของตัวแปร
- ขอบเขตการใช้ตัวแปร
กฎขอบเขตที่เกี่ยวข้องกับการบล็อกคำสั่ง จะได้รับด้านล่าง -
-
บล็อกถูกล้อมรอบด้วยวงเล็บปีกกาซึ่งประกอบด้วยชุดคำสั่ง
-
ตัวแปรที่ประกาศในบล็อกสามารถเข้าถึงได้และใช้งานได้ภายในบล็อกนั้นและไม่มีอยู่ภายนอกนั้น
ตัวอย่างที่ 1
ต่อไปนี้เป็นโปรแกรม C สำหรับ กฎขอบเขตที่เกี่ยวข้องกับบล็อกคำสั่ง −
#include<stdio.h>
main ( ){
{
int i = 1;
printf ("%d",i);
}
{
int j=2;
printf("%d",j);
}
} ผลลัพธ์
ผลลัพธ์ที่ได้ระบุไว้ด้านล่าง −
1 2
แม้ว่าตัวแปรจะถูกประกาศซ้ำในบล็อกที่เกี่ยวข้องกันและมีชื่อเดียวกัน แต่ก็ถือว่าแตกต่างกัน
ตัวอย่างที่ 2
นี่คือโปรแกรม C อื่นสำหรับ กฎขอบเขตที่เกี่ยวข้องกับบล็อกคำสั่ง −
#include<stdio.h>
main ( ){
{
int i = 1;
printf ("%d",i);
}
{
int i =2;
printf ("%d",i);
}
} ผลลัพธ์
ผลลัพธ์ที่ได้ระบุไว้ด้านล่าง −
1 2
การประกาศตัวแปรภายในบล็อกที่มีชื่อเดียวกันกับตัวแปรในบล็อกภายนอกจะปิดบังตัวแปรบล็อกภายนอก ขณะที่ดำเนินการบล็อกภายใน
ตัวอย่างที่ 3
นี่คือโปรแกรม C อื่นสำหรับ กฎขอบเขตที่เกี่ยวข้องกับบล็อกคำสั่ง −
#include<stdio.h>
main ( ){
int i = 1;{
int i = 2;
printf ("%d",i);
}
} ผลลัพธ์
ผลลัพธ์ที่ได้ระบุไว้ด้านล่าง −
2
ตัวแปรที่ประกาศภายนอกบล็อกภายในสามารถเข้าถึงได้จากบล็อกที่ซ้อนกัน โดยที่ตัวแปรเหล่านี้จะไม่ประกาศภายในบล็อกภายใน
ตัวอย่างที่ 4
พิจารณาโปรแกรมอื่นสำหรับกฎขอบเขตที่เกี่ยวข้องกับบล็อกคำสั่ง −
#include<stdio.h>
main ( ){
int i = 1;{
int j = 2;
printf ("%d",j);
printf ("%d",i);
}
} ผลลัพธ์
ผลลัพธ์ระบุไว้ด้านล่าง −
2 1