프로그래밍 언어/C
C언어 27강)++ &연산자로 구조체(struct)포인터에 구조체 변수 할당하기
happy_life
2020. 11. 16. 14:56
C언어 27강)+ 구조체의 멤버가 포인터 일 때, 구조체 포인터 변수 선언(동적메모리할당)
전 시간에 구조체 포인터에 대해 배웠다. 구조체 포인터란? '를 사용해야 한다 (*p1). name = p1 -> name ▲매번 *과 ( )를 사용하기 불편하" data-og-host="abcdefgh123123.tistory.com" data-og-source-url="htt..
abcdefgh123123.tistory.com
전 시간에선 구조체 포인터를 사용하기 전에 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;
}
논리적 구조 그림