본문 바로가기

c언어 구조체6

언리얼엔진5 22장 [구조체] ▣ 안녕하세요. 이번장에서는 구조체를 공부해 보겠습니다. 구조체는 여러 개의 데이터를 구조화시키는 데이터 구조입니다. ▣ 먼저 BluePrints에서 Structure를 생성합니다. ▣ 이름은 Playerinfo로 지정하고 Add Variable를 클릭해서 3개의 변수를 생성합니다. hp, ex, speed으로 이름을 지정하고 저장을 합니다. ▣ LevelBluePrint로 가서 player라는 변수를 생성합니다. 그리고 데이터타입을 아까 생성했던 Playerinfo 구조체를 검색해서 지정합니다. 컴파일 저장 후 ▣ player변수를 GET 합니다. 그리고 블록에 원모양에 오른쪽마우스를 클릭하면 Split Struect Pin이라는 메뉴가 나옵니다. 이걸 클릭하게 되면 ▣ 구조체의 자료가 하나하나 나오게.. 2023. 2. 7.
C언어 - [공용체, 열거형, 구조체비트필드] ▣ 우선 공용체는 쉽게 이야기하면 메모리를 공용으로 사용하는 구조체라고 생각하시면 됩니다. union으로 구조체와 동일하게 선언해주시고, 안에 변수를 선언해주세요. 그리고 main함수에서 union Game game;으로 정의한 후에 printf() 함수로 각각에 메모리 크기를 출력해보세요. 그럼 메모리 크기가 가장 큰 자료형 크기로 공용체가 정의되어 있음을 확인할 수 있습니다. ▣ 같은 메모리를 사용하는지 값을 넣어서 확인해보겠습니다. char, short, int 형 중에 가장 큰 자료형인 int game.score에 값을 넣어보겠습니다. 숫자 앞에 0x가 있으면 16진수입니다. 형식 지정자도 % x를 해야지 16진수로 출력되게 됩니다. ▣ 출력해보면 나누어져 값이 들어가 있는 걸 확인할 수 있습니다.. 2021. 5. 17.
C언어 - [구조체, 구조체 포인터, 구조체배열, 구조체포인터배열] ▣ 구조체는 쉽게 생각하면 c언어로 배열을 만들 때 하나에 자료형으로 선언하고 사용합니다. int game[10] 이렇게 하나에 자료형으로 사용하게 되면 우리가 game에 대한 여러 가지 정보를 관리하려면 이렇게 char gameName [10], int gameNumber [10], int gameScore [10] 이런 식으로 하나하나 선언해주고 관리해야합니다. 이렇게 되면 코드가 너무 길어지고 관리하는 게 복잡할 수 있습니다. 그래서 사용하는게 바로 구조체입니다. ▣ 먼저 구조체는 함수 외부에서 선언해야 합니다. struct라는 자료형식으로 지정해주고 이름을 정해줍니다. 구조체 이름은 나중에 함수안에서 선언할 변수와 이름이 헷갈릴 수 있기 때문에 대문자로 시작해주세요. 이 시작이 나중에 객체지향언어.. 2021. 5. 16.
C언어 - [글자 위치 이동, 커서 이동 코드] ▣ 커서에 위치를 지정하려면 우선 windows.h 헤더파일 선언하고 함수 선언 및 정의를 해야한다. 함수에 매개변수에 x, y 값을 받을 매개변수를 선언하고 HANDLE 자료형을 선언한다. 이건 쉽게 이야기하면 windows에 도구를 사용하기 위한 키값이라고 생각하시면 됩니다. GetStdHandle(STD_OUTPUT_HANDLE) 출력하는 핸들 값을 handle에 정의하고 COORD 는 포지션을 구조체로 지정한다. pos.X = x, pos.Y = y 값으로 매개변수에 x, y 값으로 대입한다. SetConcoleCursorPosition(handle, pos) 커서를 지정하는 구조체에 매개변수 처음 값은 STD_OUTPUT_HANDLE 값과 COORD 포지션에 값을 각각 넣어주고 ▣ 메인 함수에서.. 2021. 5. 6.
C언어 25장(c언어 게임만들기_3, 배열응용, 응용 함수, 전역변수, 조건문 활용, 반복문, 콘솔글자색 바꾸기, 배경색) ▣ 안녕하세요 ^^ 저번장 숙제는 다해보셨나요? 이제 게임에 틀이 거의 완성되어 가고 있네요. 오늘은 플레이어가 몬스터를 죽이면 경험치가 오르고 레벨업을 하는 아주 간단한 함수를 구현해 보겠습니다. ▣ 매 장마다 말씀드리지만, 제가 만든 코딩이 정답이 아닙니다. 정말 쉽게 게임을 만들기 위해서 가독성과 최적화를 생각하지 않고 만들었기 때문에, 이점 참고해주시고 공부하면서 여러분들만에 코딩으로 바꿔서 게임을 만들어보세요. ▣ 먼저 게임 정보 함수에 플레이어에 레벨과 경험치를 표현해주는 함수를 추가해 보겠습니다. 경험치를 함수 표현한 하는 이유는 우리가 경험치 게이지를 배열로 표현해야 하기 때문입니다. ▣ 경험치게이지를 배열로 만들어서 색을 넣고 표현했습니다. 경험치에 변수값에 따라 반복하게 하게 하는 형식.. 2020. 6. 12.
C언어 19장(구조체, 공용체, 열거형) ▣ 안녕하세요^^ 저번장까지 포인터와 메모리를 공부했습니다. 숙제랑 잘하고 계시죠?? 꼭 하셔야 합니다. 눈으로만 읽고 끝나면 아무것도 못하게 됩니다. -_- 저도 그랬습니다. ^^;; 직접 해보시고 많이 틀려봐야 코딩 실력이 늘어납니다. ^^ 꼭 해보세요. 그리고 포인터와 함수, 배열에 활용은 계속 장 하나하나를 배우면서 익혀보도록 하겠습니다. ▣ 그럼 오늘은 구조체와 공용체 그리고 열거형을 공부해보겠습니다. ▣ 개념부터 공부해볼까요? 배열은 동일한 자료형을 모아서 만든 변수에 모임과 같았죠? 그럼 구조체는 무엇일까요? ▣ 구조체는 배열과 비슷하지만 다른 자료 형식들을 연속적으로 만들어서 사용할 수 있습니다. 공용체는 쉽게 이야기하면 구조체와 비슷하지만 메모리를 공유해서 사용한다고 생각해주세요. 그리고.. 2020. 5. 18.