English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

static 멤버를 정의하는 방법은 무엇인가요? / C ++코드 섹션의 실행 시간을 계산하는 방법은 무엇인가요?

전역 변수와 정적 변수는 C 또는 C++에서 기본 값으로 초기화됩니다. ++규격에서, 컴파일 시에 자유롭게 0으로 할당할 수 있습니다. 정적 변수와 전역 변수의 동작은 생성된 대상 코드와 동일합니다. 이 변수들은 .bss 파일에 할당되며, 로드될 때 변수에 할당된 상수를 통해 메모리를 할당합니다.

다음은 전역과 정적 변수의 예제입니다.

예제

#include <stdio.h>
int a;
static int b;
int main() {
   int x;
   static int y;
   int z =; 28;
   printf("The default value of global variable a : %d", a);
   printf("\nThe default value of global static variable b : %d", b);
   printf("\nThe default value of local variable x : %d", x);
   printf("\nThe default value of local static variable y : %d", y);
   printf("\nThe value of local variable z : %d", z);
   return 0;
}

출력 결과

전역 변수 a의 기본 값: 0
전역 정적 변수 b의 기본 값: 0
지역 변수 x의 기본 값: 0
지역 정적 변수 y의 기본 값: 0
지역 변수 z의 값: 28

위 프로그램에서, 전역 변수는main()함수 외부에서 선언되었으며, 중 하나가 정적 변수입니다. 세 개의 지역 변수가 선언되었으며, 변수 z도 초기화되었습니다.

int a;
static int b;
...
int x;
static int y;
int z =; 28;

기본 값이 출력됩니다.

printf("The default value of global variable a : %d", a);
printf("\nThe default value of global static variable b : %d", b);
printf("\nThe default value of local variable x : %d", x);
printf("\nThe default value of local static variable y : %d", y);
printf("\nThe value of local variable z : %d", z);
SQLite 강의