Rumah > pembangunan bahagian belakang > C++ > Pengisytiharan semula pembolehubah global dalam program C

Pengisytiharan semula pembolehubah global dalam program C

WBOY
Lepaskan: 2023-09-20 22:29:05
ke hadapan
1320 orang telah melayarinya

Pengisytiharan semula pembolehubah global dalam program C

Kita akan melihat bagaimana C dan C++ berkelakuan berbeza apabila mengisytiharkan semula pembolehubah global tanpa pengamulaan, mengisytiharkan semula pembolehubah global dengan permulaan, mengisytiharkan semula pembolehubah global dan memulakannya dua kali. Selain itu, kami akan mengulangi gabungan di atas menggunakan pembolehubah tempatan.

1. A) Program C: Pengisytiharan semula pembolehubah global tanpa pemula

#include <stdio.h>
int var;
int var;
int main(){
   printf("Var = %d",var);
   return 0;
}
Salin selepas log masuk

Output

Var = 0
Salin selepas log masuk

B) Program C++: Pengisytiharan semula pembolehubah global tanpa pemula

#include <iostream>
using namespace std;
int var;
int var;
int main(){
   cout<<"Var = "<<var;
   return 0;
}
Salin selepas log masuk

Output

Compilation Error: int var;
main.cpp:3:5: note: &lsquo;int var&rsquo; previously declared here
Salin selepas log masuk

C++ Benarkan pembolehubah global diisytiharkan semula tanpa permulaan. Nilainya masih 0. C++ memberikan ralat kompilasi yang menunjukkan bahawa pembolehubah telah diisytiharkan semula.

2. A) Program C: Pengisytiharan semula pembolehubah tempatan tanpa pemula

#include <stdio.h>
#include <stdio.h>
int main(){
   int var;
   int var;
   printf("Var = %d",var);
   return 0;
}
Salin selepas log masuk

Output

error: redeclaration of &lsquo;var&rsquo; with no linkage
Salin selepas log masuk
Salin selepas log masuk

B) Program C++: Pengisytiharan semula pembolehubah tempatan tanpa pemula

#include <iostream>
using namespace std;
int main(){
   int var;
   int var;
   cout<<"Var = "<<var;
   return 0;
}
Salin selepas log masuk

Output

error: redeclaration of &lsquo;int var&rsquo;
Salin selepas log masuk

C++ Baik C++ mahupun C++ tidak membenarkan pengisytiharan semula pembolehubah tempatan tanpa permulaan. Kedua-dua program gagal untuk disusun.

3. A) Program C: Isytihar semula pembolehubah global dengan pemulaan

#include <stdio.h>
int main(){
   int var;
   int var=10;
   printf("Var = %d",var);
   return 0;
}
Salin selepas log masuk

Output

Var = 10
Salin selepas log masuk

B) Program C++: Isytiharkan semula pembolehubah global dengan pemula

#include <iostream>
using namespace std;
int var;
int var=10;
int main(){
   cout<<"Var = "<<var;
   return 0;
}
Salin selepas log masuk

Output

main.cpp:7:9: error: redeclaration of &lsquo;int var&rsquo;
int var;
Salin selepas log masuk

rreee

membenarkan semula -🎎 Pembolehubah global yang tidak dimulakan. Penyusunan program C++ gagal.

4. A) Program C: Isytihar semula pembolehubah global dan mulakan

#include <stdio.h>
int var;
int var=10;
int main(){
   printf("Var = %d",var);
   return 0;
}
Salin selepas log masuk

Output

error: redeclaration of &lsquo;var&rsquo; with no linkage
Salin selepas log masuk
Salin selepas log masuk

B) Program C++: Isytiharkan semula pembolehubah tempatan melalui pemulaan

#include <iostream>
using namespace std;
int main(){
   int var;
   int var=10;
   cout<<"Var = "<<var;
   return 0;
}
Salin selepas log masuk

Output

error: redeclaration of &lsquo;int var
Salin selepas log masuk
Kedua-dua C++: C++ Pengisytiharan semula pembolehubah tempatan tidak dibenarkan, walaupun ia tidak dimulakan. Kedua-dua program gagal untuk disusun🎜

Atas ialah kandungan terperinci Pengisytiharan semula pembolehubah global dalam program C. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan