구구의 타닥타닥 코딩 이야기
본문 바로가기
  • 게임 개발자가 되고싶은 구구

전체 글75

C# 배열 1 안녕하세요! 오늘도 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘부터는 C#의 배열에 대해 알아보도록 하겠습니다. 배열 1차원 배열 int[] arrNum = new int[5]; // 배열이 5개 - 변수 선언이 많아지는 경우 - 동일한 데이터 형 - 배열의 GetType() 1차원 배열 선언과 초기화 -> 자주 쓰는 4가지 선언 방법 int[] arrNum = new int[3]; int[] arrNum = new int[]{0, 1, 2}; int[] arrNum = new int[3]{0, 1, 2}; int[] arrNum = new int[]{0, 1, 2}; index란? - 배열에 접근하는 위치 번호 - 인덱스는 0부터 시작(0 ~ (N-1)) ex) 배열을 3개 만든다 -> int.. 2021. 12. 3.
C# 함수 2 안녕하세요! 오늘도 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘도 C#의 함수에 대해 알아보도록 하겠습니다. out - ref 키워드 처럼 레퍼런스(ref처럼 파라미터에 사용됨) - 전달하는 변수 초기화 없이 사용 가능 - static void InitNum(out int addNum) 저번시간에 배웠던 ref를 이용한 함수 1개와 out을 이용한 함수 1개를 만들었습니다. 둘다 똑같이 값을 100 대입한다는 함수인데 a의 경우는 출력이 잘 되고 b의 경우는 출력이 안됩니다. 그 이유는 int a, b를 둘다 선언은 했지만 초기화는 하지 않았기 때문에 ref는 초기화 없이는 사용할 수 없으므로 오류가 나고 out은 초기화 없이 사용가능하기 때문에 오류가 나지 않습니다. out도 ref처럼 주소값.. 2021. 12. 2.
C# 함수 1 안녕하세요! 오늘도 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘부터는 C#의 함수에 대해 알아보도록 하겠습니다. 메소드 static void Print() // 접근지정자 반환 데이터 형식 메소드명(매개변수, ·····) { Console.Write("Hello World"); } - 특정 코드를 모아둔 코드블록( { ~ } ) - 특정 기능을 분리해서 처리 - 반환 데이터는 함수를 통해 나온 값의 데이터 형을 뜻함(void는 아무것도 반환하지 않는다는 뜻) - 매개변수를 쓰지 않으면 그냥 '()' 처리 ※static은 나중에 설명. 함수의 형태에 들어가기 앞서서 몇가지를 정의하고 넘어가겠습니다. 리턴형(x) -> void 리턴형 데이터(o) -> int, float와 같이 반환값이 있음 파라미.. 2021. 12. 1.
C# 정리 노트 1 안녕하세요 게임개발자가 되기위해 공부하고있는 구구입니다. 오늘은 지금까지 배웠던 C#의 내용들이 많아서 한번쯤 정리하고 가고자 이렇게 정리노트를 쓰게되었습니다. (Ctrl + F 로 찾아서 쓰시면 편해요) .Net Framework C#을 통해 프로그래밍을 합니다. 그래서 컴파일까지만 해주면 나머지는 알아서 컴퓨터가 기계어로 바꿔준 후 운영체제로 넘기기 때문에 맥과 윈도우 모두 호환이 가능하게됩니다. C#의 특징 1. C++에서 파생된 객체 지향 언어 2. 형식 안정성(객체지향언어는 형식의 안정성이 있음) 3. Java의 특징 + C, C++ C#의 장점 1. 입문자에게 적합한 언어 2. 메모리 관리가 쉽다(Garbage Collector) 3. 다양한 라이브러리 지원 변수 데이터 형식 + 식별자(이름).. 2021. 11. 30.
패스트캠퍼스 챌린지 30일차 안녕하세요! 오늘도 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘은 갓생살기 30일차가 되는날입니다. 드디어 갓생살기 마지막 날입니다. 그래서 오늘은 지금까지 배운 내용들로 게임을 만드는 시간을 가졌습니다. 오늘 만들 게임은 숫자 달리기 게임입니다. 위의 그림처럼 1번부터 4번까지의 숫자들이 한칸씩 이동하면서 도착선까지 누가 빨리 도착하는지 경쟁하는 게임입니다. 우선 기본 틀부터 만들어보겠습니다. 이렇게 되면 경기장과 경기말들은 세팅이 완료되었습니다. 이제 1번부터 4번까지가 달려야 하고 결승선을 표시해야합니다. 우선 화면의 말들이 계속 달려야하기에 반복문을 써야합니다. 따라서 while(true)를 써서 계속 반복되도록 설정해줍니다. 여기서 배우진 않았지만 Console.Clear();를 사용할.. 2021. 11. 30.
패스트캠퍼스 챌린지 29일차 안녕하세요! 오늘도 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘은 갓생살기 29일차가 되는날입니다. 오늘은 어제 공부하던 분기문에 대해 이어서 공부하도록 하겠습니다. 어제 하던 반복문은 언젠가는 멈추는, 즉 조건문이 빠저나가는 경우가 많았습니다. 하지만 이번에 할 내용은 무한반복입니다. 무한반복은 게임에서 봤을때 게임은 항상 계속 플레이하기 때문에 무한반복코드가 쓰인다는 사실을 알면 좋을것 같습니다. while과 for의 무한반복에 대해서 알아볼텐데 형식은 아래와 같습니다. while(true){ 무한반복코드 } for(; ;){ 무한반복코드 } while문의 조건식이 true이기때문에 while문의 조건은 항상 성립할 것입니다. 따라서 계속 출력문장이 나올 것입니다. 이러한 무한루프를 제어하는.. 2021. 11. 29.
패스트캠퍼스 챌린지 28일차 안녕하세요! 오늘도 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘은 갓생살기 28일차가 되는날입니다. 오늘은 어제 공부하던 분기문에 대해 이어서 공부하도록 하겠습니다. 이번에는 분기문(branch)중 switch에 대해 알아보도록하겠습니다. switch문은 if문과 다르게 여러개의 조건식이 있을경우 주로 사용합니다. switch(조건) { case 조건: ~~~~~~ break; case 조건: ~~~~~~ break; } 위와같은형태를 띄고있습니다. 여기서 case 10의 경우는 break이 없는데 이는 case 9일때와 case 10일때 둘다 성적이 A이기 때문에 break이 없습니다. 그리고 default가 있는데 default는 위의 케이스에 해당하지 않는 모든 case의 경우를 나타냅니다.. 2021. 11. 28.
패스트캠퍼스 챌린지 27일차 안녕하세요! 오늘도 게임개발자가 되기위해 공부하고 있는 구구입니다. 오늘은 갓생살기 27일차가 되는날입니다. 오늘은 어제까지 공부하던 연산자를 이용하는 시간을 가지도록 하겠습니다. 전에 한번 언급한 지역변수에 대해 자세히 알아보겠습니다. 지역변수란 { }(브레이스) 코드블록 내부에 선언되고 코드블록 외부에서는 사용불가한 변수입니다. 예를 들어 메인함수 안에서 설정한 int a; 와같은 a가 지역변수 입니다. 이런 지역변수의 개념을 언급한 이유는 분기문에서 변수 선언시 구분했으면 좋겠기 때문입니다. 분기문(branch)란 (if) 특정조건을 이용하여 코드를 다른 섹션으로 분기하는 것입니다. if, if~ else, if~ else if ~ else 와 같은 형식으로 쓰입니다. 사용되는 형식은 아래와 같습니.. 2021. 11. 27.