전 시간에선 구조체 포인터를 사용하기 전에 malloc 함수로 동적 메모리를 할당해주었다. 하지만 &연산자를 사용하면 동적 메모리를 할당하지 않고 바로 구조체 포인터에 구조체 변수를 할당할 수 있다.
●구조체 변수 할당 코드 예제
#include <stdio.h>
struct Data {
char c;
};
int main()
{
struct Data s1;
struct Data *pnt;
pnt = &s1; //&연산자로 s1의 주소를 pnt 포인터에 넣어줌
pnt->c = 'A'; //pnt로 역참조해서 c로 접근한뒤 A라는 값 넣어줌
printf("pnt로 확인하는 c: %c", pnt->c );
return 0;
}
논리적 구조 그림
'프로그래밍 언어 > C' 카테고리의 다른 글
C언어 29강) 자료형 변환하기 (0) | 2020.11.16 |
---|---|
C언어 28강) 공용체 (0) | 2020.11.16 |
C언어 27강)+ 구조체(struct)의 멤버가 포인터 일 때, 구조체 포인터 변수 선언(동적메모리할당) (0) | 2020.11.15 |
C언어 27강) 구조체(struct) 포인터 기본 (0) | 2020.11.15 |
C언어 26강) 구조체(struct) 기본개념 및 초기화 (0) | 2020.11.15 |