본문 바로가기

c언어123

c언어 공용체에 대하여 알아보기 c언어 공용체에 대하여 알아보기 네 안녕하세요, 이번 포스팅에서는 공용체에 대하여 알아보도록 하겠습니다. c언어에서는 같은 메모리 영역을 여러 개의 변수들이 공유할 수 있도록 하는 기능이 있는데, 이것을 공용체라고 부릅니다. 그리고 이를 하는 이유는 메모리를 절약하기 위해서 사용을 합니다. 실제로 c언어에서 쓰이는 메모리의 크기는 꽤 큰 편이라서, 다 쓴 소스파일 역시 꽤 크게 저장이 되는 편입니다. 그래서 메모리를 공유해도 되는 경우라 한다면 공용체를 쓰는 것을 권장합니다. 그럼 지금부터 공용체를 어떻게 쓰는지 알아보도록 하겠습니다. 1. 공용체 생성 방법 공용체를 생성하는 방법은 구조체를 생성하는 방법과 매우 비슷합니다. 사용 방법은 이렇습니다. union sample { int i; char c; .. 2023. 1. 30.
c언어 구조체와 함수와의 관계 알아보기 c언어 구조체와 함수와의 관계 알아보기 네 안녕하세요, 이번 포스팅에서는 구조체와 함수와의 관계에 대하여 알아보도록 하겠습니다. 우리가 구조체를 사용을 하면서 이러한 의문점들을 가질 수 있을 거라 생각을 합니다. 함수의 인수로 구조체를 넘길 수 있을까? 함수에서 반환값을 받을 때 구조체를 반환할 수 있을까? 일단 결론부터 말씀 드리자면 둘 다 가능합니다. 그래서 이들을 어떻게 하면 쓸 수 있는지 알아보려 합니다. 그럼 지금부터 시작하도록 하겠습니다. 1. 구조체를 함수의 인수로 넘기는 방법 우리가 구조체를 함수의 인수로 넘길 경우 역시 일반 자료형을 함수의 인수로 넘기는 것과 별반 다르지 않습니다. 다만, 구조체의 크기에 따라서 함수의 인자로 넘어가는 시간이 좀 더 걸릴 수 있습니다. 한 가지 예를 들어.. 2023. 1. 30.
c언어 구조체에서 사용되는 포인터에 대하여 알아보기 c언어 구조체에서 사용되는 포인터에 대하여 알아보기 네 안녕하세요 이번 포스팅에서는 구조체에서 사용되는 포인터에 대하여 알아보려고 합니다. 우리가 구조체를 사용할 때 사용이 되는 포인터는 크게 두 가지입니다. 구조체를 가리키는 포인터 포인터를 멤버로 가지는 구조체 이렇게 두 가지인데, 이 둘을 차례대로 살펴보면서 어떻게 사용이 되는지 한 번 알아보도록 하겠습니다. 1. 구조체를 가리키는 포인터 구조체를 가리키는 포인터는 말 그대로 구조체를 가리키고 있는 포인터입니다. 우리가 변수를 포인터로 가리키는 것과 똑같습니다. 사용 방법은 이렇습니다. struct student s = {24, "Kim", 3.5}; struct student *p; p = &s; printf("학번 = %d, 이름 = %s, 학점.. 2023. 1. 29.
c언어 구조체의 배열에 대하여 알아보기 c언어 구조체의 배열에 대하여 알아보기 네 안녕하세요, 이번 포스팅에서는 구조체의 배열에 대하여 알아보는 시간을 가져보도록 하겠습니다. 우리가 구조체를 쓰면 여러 개의 자료형을 한 번에 묶어서 저장이 가능하다는 것을 알 수 있었습니다. 하지만, 실제로 우리가 프로그램을 만들게 되면 절대로 한 개의 데이터만을 가지고서 처리를 하지 않죠? 그렇기 때문에 다수의 데이터를 저장을 해야만 하는데, 그럴 경우에 구조체 배열을 사용을 하게 됩니다. 그럼 이를 어떻게 사용을 하는지 지금부터 알아보도록 하겠습니다. 1. 구조체 배열의 선언 구조체 배열은 우리가 일반적으로 사용을 하는 배열을 선언하는 것과 매우 비슷합니다. 다만, 구조체이기 때문에 앞에 struct가 붙는다는 것이 다른 점입니다. 선언은 이런 식으로 합니.. 2023. 1. 29.