Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

การประกาศตัวแปรโกลบอลใน C


ที่นี่เราจะมาดูกันว่าอะไรคือการประกาศตัวแปรทั่วโลกใน C อีกครั้ง C รองรับสิ่งนี้หรือไม่ ให้เราดูโค้ดต่อไปนี้เพื่อทำความเข้าใจเรื่องนี้

ตัวอย่าง

#include <stdio.h>
int main(){
   int a;
   int a = 50;
   printf("a is : %d\n", a);
}

ผลลัพธ์

[Error] redeclaration of 'a' with no linkage

ดังนั้นเราจะเห็นว่าเราไม่สามารถประกาศตัวแปรโลคัลซ้ำได้ ตอนนี้ให้เราดูว่าผลลัพธ์ของตัวแปรโกลบอลจะเป็นอย่างไร

ตัวอย่าง

#include <stdio.h>
int a;
int a = 50;
int main(){
   printf("a is : %d\n", a);
}

ผลลัพธ์

a is : 50

ดังนั้นตัวแปรโกลบอลจึงไม่สร้างข้อผิดพลาดใดๆ ในกรณีนี้ ตอนนี้เรามาดูกันว่าการประกาศครั้งแรกถือหนึ่งค่าแล้วสามารถประกาศใหม่ได้หรือไม่?

ตัวอย่าง

#include <stdio.h>
int a = 10;
int a = 50;
int main(){
   printf("a is : %d\n", a);
}

ผลลัพธ์

[Error] redefinition of 'a'

ดังนั้นเราจะเห็นได้ว่าเราสามารถประกาศตัวแปรโกลบอลได้อีกครั้งเมื่อไม่ได้กำหนดค่าเริ่มต้น