티스토리 뷰

Developer/C & C++

[C] 복합리터럴 이란?

데브포유 2008. 8. 22. 15:23
반응형
복합리터럴를 설명하는 것보다 예제로 보는게 이해가 쉽더군요.
 
int diva[2]= {20,30}; 은 일반적인 배열 선언의 모습인데요.
 
이것을 복합리터럴로 표현하면 다음과 같습니다.
 
(int [2]){20,30};  즉 배열명이 없는 형태입니다.
 
C99표준에 추가된 것으로 변수명이 없기때문에 선언하고 값을 유지하려면
 
포인터를 사용해야 합니다.
 
int *pt = (int [2]){20,30);
 
복합리터럴은 다음과 같은 경우에도 유용하게 사용됩니다.
 
void sum(int ar[], int n); 이란 함수가 있을 경우
sum( (int [6]){1,2,3,4,5,6}, 6);
 
과 같이 사용할 수가 있습니다.
반응형