ローカル スコープで指定されたブロックで定義された変数は、ブロック内でのみ表示され、ブロックの外では表示されません。
#include<stdio.h> int r= 50; /* global area */ main (){ int p = 30; printf (“p=%d, r=%d” p,r); fun (); } fun (){ printf (“r=%d”,r); }
p =30, r = 50 r = 50
関数は、特定のタスクを実行するステートメント ブロックです。
関数の本体内で宣言された変数はローカル変数と呼ばれます
これらの変数は、それを作成した特定の関数内にのみ存在します。他の関数もメイン関数もそれらについて知りません。
ローカル変数の存在は、関数がその特定のタスクを完了して呼び出しポイントに戻ると終了します。
#include<stdio.h> main (){ int a=10, b = 20; printf ("before swapping a=%d, b=%d", a,b); swap (a,b); printf ("after swapping a=%d, b=%d", a,b); } swap (int a, int b){ int c; c=a; a=b; b=c; }
Before swapping a=10, b=20 After swapping a = 10, b=20
関数本体の外で宣言された変数はグローバル変数と呼ばれます。これらの変数には、任意の関数を通じてアクセスできます。
#include<stdio.h> int a=10, b = 20; main(){ printf ("before swapping a=%d, b=%d", a,b); swap (); printf ("after swapping a=%d, b=%d", a,b); } swap (){ int c; c=a; a=b; b=c; }
Before swapping a = 10, b =20 After swapping a = 20, b = 10
以上がC プログラミングにおける関数のスコープ規則は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。