> 백엔드 개발 > C++ > 본문

C 언어의 변수 수명주기를 설명하십시오.

WBOY
풀어 주다: 2023-09-02 19:37:07
앞으로
1556명이 탐색했습니다.

C 언어의 변수 수명주기를 설명하십시오.

스토리지 클래스는 범위, 수명 주기 및 변수 바인딩을 지정합니다.

변수를 완전히 정의하려면 "유형"뿐만 아니라 저장 클래스도 언급해야 합니다.

변수 이름은 변수 값을 저장하기 위해 비트 집합이 할당되는 컴퓨터 메모리의 물리적 위치를 식별합니다.

저장소 클래스는 다음 요소를 알려줍니다. -

  • 변수는 어디에 저장됩니까(메모리 또는 CPU 레지스터에)?
  • 초기화가 없으면 변수의 초기값은 얼마인가요?
  • 변수의 범위(변수에 접근할 수 있는 범위)는 무엇인가요?
  • 변수의 수명주기는 무엇인가요?

Lifetime

변수의 수명은 컴퓨터가 해당 변수에 메모리를 할당하는 기간(메모리 할당과 할당 해제 사이의 기간)을 정의합니다.

C 언어에서 변수는 자동, 정적 또는 동적 수명 주기를 가질 수 있습니다.

  • Automatic - 자동 수명 주기로 변수를 만듭니다. 매번 그들의 선언문은 충족되고 파괴되었습니다. 또한 해당 블록도 종료됩니다.
  • static - 선언이 처음 실행될 때 변수가 생성됩니다. 실행이 중지/종료되면 파기됩니다.
  • Dynamic - 변수 메모리는 메모리 관리 기능을 통해 할당 및 해제됩니다.

스토리지 클래스

C 언어에는 네 가지 스토리지 클래스가 있습니다. -

자동 메모리제어가 블록에 남아 있을 때까지제어가 블록에 남아 있을 때까지localautomaticregistersCPU 레지스터garbage valuelocal 등록 staticmemoryzero함수 호출 간 값localstaticexternalmemorygarbage value전체 프로그램 실행 글로벌외부 tr>
스토리지 클래스 스토리지 영역 기본 초기 값 라이프 사이클 범위 키워드
제어가 블록에 남아 있을 때까지
Example

다음은 자동 저장 클래스를 위한 C 프로그램입니다-

Live Demo

#include<stdio.h>
main ( ){
   auto int i=1;{
      auto int i=2;{
         auto int i=3;
         printf ("%d",i)
      }
      printf("%d", i);
   }
   printf("%d", i);
}
로그인 후 복사

Output

위 프로그램을 실행하면 다음과 같은 출력이 나옵니다-

3 2 1
로그인 후 복사

Example

다음은 C입니다 외부 저장소 클래스용 프로그램 Program -

Live Demonstration

#include<stdio.h>
extern int i =1; /* this &lsquo;i&rsquo; is available throughout program */
main ( ){
   int i = 3; /* this &lsquo;i&#39; available only in main */
   printf ("%d", i);
   fun ( );
}
fun ( ) {
   printf ("%d", i);
}
로그인 후 복사

Output

위 프로그램을 실행하면 다음과 같은 출력이 생성됩니다. -

3 1
로그인 후 복사

위 내용은 C 언어의 변수 수명주기를 설명하십시오.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿