C語言區域性變數、全域性變數、靜態區域性變數、靜態全域性變數
建立三個檔案,檔名分別為main.c \ head1.c \ head2.c
main.c
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int A;
void show(){
volatile static int a ;//靜態區域性變數(static) 靜態區域性變數定義時前面加static關鍵字。
a++;
f1(a);
f2(a);
//printf("show: B = %d\n",B);
}
void main(int *argv, char *args[]){
show();
show();
show();
show();
int c;
static int b = 10;
}
head1.c
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
static int B ;
int A;
void f1(int a){
A++,B++;
printf("head1.h:f1(%d), A = %d, B = %d\n",a,A,B);
}
head2.c
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
static int B;
int A;
void f2(int a){
A += 2, B += 2;
printf("head2.h:f2(%d), A = %d, B = %d\n",a,A,B);
}
編譯與執行結果:
-bash-4.1$ gcc -o a Demo.c head*.c
-bash-4.1$ ./a
head1.h:f1(1), A = 1, B = 1
head2.h:f2(1), A = 3, B = 2
head1.h:f1(2), A = 4, B = 2
head2.h:f2(2), A = 6, B = 4
head1.h:f1(3), A = 7, B = 3
head2.h:f2(3), A = 9, B = 6
head1.h:f1(4), A = 10, B = 4
head2.h:f2(4), A = 12, B = 8
-bash-4.1$
相關文章
- 區域性變數和全域性變數(靜態和非靜態)區別變數
- C語言--靜態區域性變數C語言變數
- 【c】全域性變數與區域性變數變數
- 成員變數、全域性變數、例項變數、類變數、靜態變數和區域性變數的區別變數
- 全域性變數與區域性變數變數
- 區域性變數和全域性變數變數
- Java區域性變數與全域性變數Java變數
- java 全域性變數和區域性變數Java變數
- jmeter全域性變數和區域性變數JMeter變數
- Python中的全域性變數和區域性變數Python變數
- JavaScript五:全域性變數&區域性變數;運算子JavaScript變數
- javascript中的作用域(全域性變數和區域性變數)JavaScript變數
- js-js的全域性變數和區域性變數JS變數
- java執行緒安全問題之靜態變數、例項變數、區域性變數Java執行緒變數
- 區域性靜態變數的初始化觀測變數
- 十二、變數作用域:區域性變數、全域性變數,函式版名片管理系統—新增函式文件變數函式
- 函式之定義及全域性變數&區域性變數&風溼理論函式變數
- 全域性變數變數
- 成員變數和區域性變數變數
- 多執行緒中,區域性變數與全域性變數哪個比較安全?執行緒變數
- golang變數作用域問題-避免使用全域性變數Golang變數
- 全域性 DOM 變數變數
- Python中類變數、成員變數、區域性變數的區別Python變數
- js宣告全域性變數JS變數
- Dll堆疊問題(Dll的靜態變數與全域性變數、vs的MT與MD)變數
- 【Java貓說】例項變數與區域性變數Java變數
- 理解靜態區域性變數(static)在程式中的執行規則變數
- vue定義全域性變數和全域性方法Vue變數
- 全域性DOM變數的坑變數
- PHP 超級全域性變數PHP變數
- less 全域性變數使用 引用變數
- 【SQL Server】常用全域性變數SQLServer變數
- CodeSysV3.5 在封裝靜態庫時,隱藏全域性變數。封裝變數
- 彙編眼中的函式呼叫引數傳遞以及全域性與區域性變數與“基址”函式變數
- 類,物件,成員變數和區域性變數,匿名物件物件變數
- JavaScript全域性作用域下,變數加var和不加var的區別。JavaScript變數
- mac配置全域性環境變數Mac變數
- process node.js全域性變數Node.js變數
- QT 全域性變數使用方法QT變數