Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C 프로그래밍에서 컴파일 시간과 런타임 초기화를 설명합니까?

<시간/>

컴파일 시간과 런타임 초기화에 대한 배열의 개념을 살펴보겠습니다. -

배열

배열은 인접한 메모리 위치에 저장된 항목의 모음이며 요소는 인덱스를 사용하여 액세스할 수 있습니다.

컴파일 시간 배열 초기화

컴파일 타임 초기화에서 사용자는 프로그램 자체에서 세부 사항을 입력해야 합니다.

컴파일 시간 초기화는 변수 초기화와 동일합니다. 배열 초기화의 일반적인 형태는 다음과 같습니다 -

구문

type name[size] = { list_of_values };
//integer array initialization
int rollnumbers[4]={ 2, 5, 6, 7};
//float array initialization
float area[5]={ 23.4, 6.8, 5.5,7.3,2.4 };
//character array initialization
char name[9]={ 'T', 'u', 't', 'o', 'r', 'i', 'a', 'l', '\0' };

예시

다음은 배열을 표시하는 C 프로그램입니다 -

#include<stdio.h>
void main(){
   //Declaring array with compile time initialization//
   int array[5]={1,2,3,4,5};
   //Declaring variables//
   int i;
   //Printing O/p using for loop//
   printf("Displaying array of elements :");
   for(i=0;i<5;i++){
      printf("%d ",array[i]);
   }
}

출력

Displaying array of elements :1 2 3 4 5

런타임 배열 초기화

런타임 초기화를 사용하면 사용자가 프로그램을 실행하는 동안 다른 값을 수락하거나 입력할 기회를 얻을 수 있습니다.

또한 사용자 지정 값으로 큰 배열 또는 배열을 초기화하는 데 사용됩니다. 배열은 scanf() 함수를 사용하여 런타임에 초기화할 수도 있습니다.

예시

다음은 런타임 컴파일을 사용하여 배열에 있는 모든 요소의 합과 곱을 계산하는 C 프로그램입니다. -

#include<stdio.h>
void main(){
   //Declaring the array - run time//
   int A[2][3],B[2][3],i,j,sum[i][j],product[i][j];
   //Reading elements into the array's A and B using for loop//
   printf("Enter elements into the array A: \n");
   for(i=0;i<2;i++){
      for(j=0;j<3;j++){
         printf("A[%d][%d] :",i,j);
         scanf("%d",&A[i][j]);
      }
      printf("\n");
   }
   for(i=0;i<2;i++){
      for(j=0;j<3;j++){
         printf("B[%d][%d] :",i,j);
         scanf("%d",&B[i][j]);
      }
      printf("\n");
   }
   //Calculating sum and printing output//
   printf("Sum array is : \n");
   for(i=0;i<2;i++){
      for(j=0;j<3;j++){
         sum[i][j]=A[i][j]+B[i][j];
         printf("%d\t",sum[i][j]);
      }
      printf("\n");
   }
   //Calculating product and printing output//
   printf("Product array is : \n");
   for(i=0;i<2;i++){
      for(j=0;j<3;j++){
         product[i][j]=A[i][j]*B[i][j];
         printf("%d\t",product[i][j]);
      }
      printf("\n");
   }
}

출력

Enter elements into the array A:
A[0][0] :A[0][1] :A[0][2] :
A[1][0] :A[1][1] :A[1][2] :
B[0][0] :B[0][1] :B[0][2] :
B[1][0] :B[1][1] :B[1][2] :
Sum array is :
000
000
Product array is :
000
000