ที่นี่เราจะดูว่าตัวแปร C มีขอบเขตอย่างไร ตัวแปรมีการกำหนดขอบเขตแบบคงที่เสมอใน C การผูกของตัวแปรสามารถกำหนดได้โดยข้อความของโปรแกรม สิ่งเหล่านี้ไม่ขึ้นกับสแต็กการเรียกใช้ฟังก์ชันรันไทม์
ให้เราดูตัวอย่างหนึ่งเพื่อทำความเข้าใจ
ตัวอย่าง
# include <stdio.h> int x = 0; int my_function() { return x; } int my_function2() { int x = 1; return my_function(); } int main(){ printf("The value is: %d\n", my_function2()); }
ผลลัพธ์
The value is: 0
ผลลัพธ์ที่ได้คือ 0 เนื่องจากค่าที่ส่งคืนโดย my_function() ไม่ได้ขึ้นอยู่กับฟังก์ชันซึ่งเรียกสิ่งนี้ ฟังก์ชันนี้จะคืนค่าของตัวแปรโกลบอล x เสมอ