表題のとおりなのだけど、情けないことにstaticがいまいちよくわからないまま
ここまで来てしまった。
static変数ってなに?って聞かれてもきっと答えられない。
スコープの範囲でメモリから開放される変数はローカル変数で、
スコープから外れても値を確保し続けるものはグローバル変数で、
グローバル変数はヘッダーファイルなどに定義する。
じゃあstatic変数は?
ローカル風に変数定義しても、値が開放されない変数のこと?
#include <stdio.h>
void func(void){
static int x = 3;
x++;
printf("x = %d\n",x);
}
int main(void){
func();
func();
}
こんな使い方でいいのかしら?
なるほど。