C 함수에서 정적 변수의 수명
함수 내에서 변수가 static으로 선언되면 한 번만 초기화되고 해당 값이 적용됩니다. 후속 함수 호출 전반에 걸쳐 유지됩니다. 그러나 동작을 이해하려면 정확한 수명을 결정하는 것이 중요합니다.
함수 정적 변수의 수명에는 다음이 포함됩니다.
생성자 및 소멸자 호출과 관련하여 C 표준에서는 초기화 및 초기화 해제 중에 각각 자동으로 호출되도록 지정합니다. 이렇게 하면 적절한 객체 생성 및 소멸이 보장됩니다.
수명 예
다음 코드 조각을 고려하세요.
void foo() { static string plonk = "When will I die?"; }
이 예에서 정적 변수는 plonk는 실행이 처음으로 foo 함수에 들어갈 때 초기화됩니다. 정적이므로 해당 값은 foo에 대한 후속 호출 전체에서 유지됩니다. 프로그램이 종료되면 plonk의 소멸자가 호출되어 변수가 삭제됩니다.
또한 프로그램이 실행될 때마다 정적 변수의 생성 및 소멸 순서가 달라질 수 있어 출력이 달라질 수 있습니다.
위 내용은 C 함수에서 정적 변수의 수명 및 초기화/초기화 해제 동작은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!