산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C - 변수

변수는 우리 프로그램이 조작할 수 있는 저장 영역에 주어진 이름일 뿐입니다. C의 각 변수에는 변수 메모리의 크기와 레이아웃을 결정하는 특정 유형이 있습니다. 해당 메모리에 저장할 수 있는 값의 범위 변수에 적용할 수 있는 작업 집합입니다.

변수 이름은 문자, 숫자 및 밑줄 문자로 구성될 수 있습니다. 문자나 밑줄로 시작해야 합니다. C는 대소문자를 구분하기 때문에 대문자와 소문자가 구별됩니다. 이전 장에서 설명한 기본 유형을 기반으로 다음과 같은 기본 변수 유형이 있습니다 -

Sr.No. 유형 및 설명
1

문자

일반적으로 단일 옥텟(1바이트)입니다. 정수형입니다.

2

기계에 대한 가장 자연스러운 정수 크기입니다.

3

플로트

단정밀도 부동 소수점 값입니다.

4

더블

배정밀도 부동 소수점 값입니다.

5

무효

유형이 없음을 나타냅니다.

C 프로그래밍 언어는 또한 열거형, 포인터, 배열, 구조, 합집합 등과 같은 후속 장에서 다룰 다양한 다른 유형의 변수를 정의할 수 있습니다. 이 장에서는 기본 변수 유형만 연구하겠습니다.

C에서의 변수 정의

변수 정의는 변수에 대해 생성할 스토리지 위치와 양을 컴파일러에 알려줍니다. 변수 정의는 데이터 유형을 지정하고 다음과 같이 해당 유형의 하나 이상의 변수 목록을 포함합니다. -

type variable_list;

여기에 입력 char, w_char, int, float, double, bool 또는 모든 사용자 정의 개체를 포함하는 유효한 C 데이터 유형이어야 합니다. 및 변수 목록 쉼표로 구분된 하나 이상의 식별자 이름으로 구성될 수 있습니다. 일부 유효한 선언이 여기에 표시됩니다 -

int    i, j, k;
char   c, ch;
float  f, salary;
double d;

int i, j, k; 변수 i, j 및 k를 선언하고 정의합니다. 이는 컴파일러에게 int 유형의 i, j 및 k라는 이름의 변수를 생성하도록 지시합니다.

변수는 선언에서 초기화(초기값 할당)할 수 있습니다. 이니셜라이저는 다음과 같이 등호 다음에 상수 표현식으로 구성됩니다. -

type variable_name = value;

몇 가지 예는 -

extern int d = 3, f = 5;    // declaration of d and f. 
int d = 3, f = 5;           // definition and initializing d and f. 
byte z = 22;                // definition and initializes z. 
char x = 'x';               // the variable x has the value 'x'.

이니셜라이저가 없는 정의의 경우:정적 저장 기간이 있는 변수는 암시적으로 NULL로 초기화됩니다(모든 바이트의 값은 0). 다른 모든 변수의 초기값은 정의되지 않습니다.

C에서 변수 선언

변수 선언은 컴파일러가 변수에 대한 완전한 세부 정보를 요구하지 않고 추가 컴파일을 진행할 수 있도록 주어진 유형 및 이름을 가진 변수가 있다는 것을 컴파일러에 보증합니다. 변수 정의는 컴파일 시에만 의미가 있으며 컴파일러는 프로그램을 연결할 때 실제 변수 정의가 필요합니다.

변수 선언은 여러 파일을 사용하고 프로그램 연결 시 사용할 수 있는 파일 중 하나에 변수를 정의할 때 유용합니다. extern 키워드를 사용합니다. 어느 곳에서나 변수를 선언할 수 있습니다. C 프로그램에서 변수를 여러 번 선언할 수 있지만 파일, 함수 또는 코드 블록에서는 한 번만 정의할 수 있습니다.

예시

변수가 맨 위에 선언되었지만 기본 함수 내부에서 정의 및 초기화된 다음 예제를 시도하십시오 -

라이브 데모
#include <stdio.h>

// Variable declaration:
extern int a, b;
extern int c;
extern float f;

int main () {

   /* variable definition: */
   int a, b;
   int c;
   float f;
 
   /* actual initialization */
   a = 10;
   b = 20;
  
   c = a + b;
   printf("value of c : %d \n", c);

   f = 70.0/3.0;
   printf("value of f : %f \n", f);
 
   return 0;
}

위의 코드를 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다. -

value of c : 30
value of f : 23.333334

선언 시 함수 이름을 제공하고 실제 정의가 다른 곳에서 제공될 수 있는 함수 선언에도 동일한 개념이 적용됩니다. 예를 들어 -

// function declaration
int func();

int main() {

   // function call
   int i = func();
}

// function definition
int func() {
   return 0;
}

C의 L값과 R값

C −

에는 두 가지 종류의 표현식이 있습니다.

변수는 lvalue이므로 할당의 왼쪽에 나타날 수 있습니다. 숫자 리터럴은 rvalue이므로 할당되지 않을 수 있으며 왼쪽에 나타날 수 없습니다. 다음 유효하고 무효한 진술을 살펴보십시오 -

int g = 20; // valid statement

10 = 20; // invalid statement; would generate compile-time error

C 언어

  1. C# 변수 및 (기본) 데이터 형식
  2. C# 변수 범위
  3. C++ 변수, 리터럴 및 상수
  4. C 변수, 상수 및 리터럴
  5. C 스토리지 클래스
  6. 파이썬 전역 키워드
  7. 자바 변수와 리터럴
  8. C++ 변수 및 유형:int, double, char, string, bool
  9. Verilog 할당
  10. 자바 - 변수 유형