본문 바로가기

c언어

(8)
C언어 예제 - 프로젝트 회사 프로그램(3) 포인터, if, switch-case문 사용하기 안녕하세요! 오늘은 프로젝트 삭제 기능을 구현해보기로 할거에요! 코드가 230줄 정도 되는데 뭔가 많아보입니다. 왜냐하면 함수로 기능을 나눠서 짠 것이 아니라 그냥 주먹구구식으로 짠거여서 그래요! 내일 함수로 다 만들테니까 끝까지 따라와주세요! 만약 프로젝트 생성 기능 및 보기 기능이 궁금하시다면 아래 링크에서 공부하시면 됩니다! 프로젝트 회사 프로그램 만들기(1) https://kegums.tistory.com/10 프로젝트 회사 프로그램 만들기(2) https://kegums.tistory.com/11 먼저 소스코드를 보실게요. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 3..
C언어 예제 - 프로젝트 회사 프로그램 만들기(1) 안녕하세요! C언어를 공부하시면서 가장 빨리 실력이 느는 방법은 직접 예제를 짜보는거라고 생각합니다! 그래서 이제 문법은 다 배웠으니 예제를 통해서 실력을 늘리고자 합니다! 요구 조건 : 스타트업 프로젝트 회사가 있다고 가정을 한다. 이 프로젝트 회사에서는 DB와 서버를 사용하려고 했으나, 서버, 클라이언트, DB를 이용할 줄 아는 개발자가 없다. 외주를 하려고 했으나 회사 자금이 모자라서 아웃소싱도 불가능하다. 따라서 할 수 있는 최선의 방법으로 프로그램을 계속 켜놓음으로서 프로젝트가 들어오는 것과 나가는 것을 관리할 수 있고 한 컴퓨터를 통해서 지속적으로 데이터를 쌓아두려고 한다. 컴퓨터가 꺼지지 않는 한 데이터를 지속적으로 저장된 상태로 유지하고 있어야한다. 돈이 조금 벌리면 이제 아웃소싱을 맡겨 ..
C언어 기초 문법 - 포인터에 대해서 이해하기 안녕하세요! 오늘은 8번째 시간입니다! 포인터는 c언어 기초에서 꽃이라고 할 수 가 있어요! 이해하기 조금 어렵습니다! 근데 이게 자료구조랑 알고리즘 공부할 때 필수적으로 사용하는 것이니 꼭 이해하고 넘어가주세요!! 바로 소스코드 먼저 보실게요~ Line 4 : int a[3] = {1,2,3};을 해줌으로서 a[0]에 값을 1로 초기화시키고 a[1]에는 값을 2로 초기화시키고 a[2]에는 값을 3으로 초기화를 시켰습니다. 배열 선언을 함과 동시에 초기화를 해줌을 알 수 있습니다. Line 5 : 자 이제 포인터 공부의 시작이라고 할 수 있어요! 5번 라인을 말 그대로 해석해보면 'int 자료형을 가리키는 포인터 변수 p를 선언하는데 a의 주소값을 p의 값으로 할당하겠다.'라는 의미입니다. 조금 있다가 ..
C언어 기초 문법- 구조체 기본 구조, 구조체 malloc,free 응용하기, 구조체 size 알기 안녕하세요! 오늘은 구조체 기본 구조, 구조체 malloc, free, 구조체 size에 대해서 알아보도록 하겠습니다. 저번 시간에는 malloc(), free()함수가 구조체에 적용시킨 것이 아니라 일반 자료형을 가진 변수에 적용을 시켰습니다. 그래서 이번에 구조체 배우는 김에 malloc(), free()함수를 적용시켜봤습니다. 일단 구조체는 왜 필요할까요? 구조체를 사용한다면 자료들을 효율적으로 관리할 수 있고 알아보기도 쉽습니다. 그렇다면 구조체는 언제 사용할까요? 예를 들면 대학교에 입학한 학생들이 있습니다. 그 학생들에 대한 정보를 저장하고 싶을 때 필요합니다. 그들은 외모나 내적으로 같은 사람이 없지만 특징할 수 있는 것은 있습니다. 학번, 이름, 핸드폰번호, 학년 등이 있습니다. 이러한 특..
C언어 기초 문법 - 아스키코드, 배열, 문자열 입력 출력, 알파벳 대소문자 변경에 대해서 배우기! 안녕하세요 5번째 시간입니다. 먼저 소스코드를 보실게요! 네 보시면 뭐가 좀 많죠? 차근 차근 설명해드릴게요! Line 4 : char 자료형을 가진 변수를 선언을 하는데 []라는 기호가 나왔어요.. 네 그게 바로 배열을 표시하는 기호입니다! 배열은 값들을 순차적으로 넣고 한 변수의 이름으로 묶을 수 있도록 만들어주는거에요! 저런 식으로 정의를 내리게 된다면 ascii[0] 에는 '\n'이 저장이 되어있구요 ascii[1]에는 'A', ascii[2]에는 'Z', ascii[3]에는 'a', ascii[4]에는 'z'가 저장이 되는겁니다. 따라서 char 자료형을 가진 변수 ascii의 배열 크기는 5개가 들어가 있으니까 5가 되겠죠? Line 5 : 이거는 좀 다르게 Line4와 똑같은 모양으로 선언을..
C언어 기초 문법 - 이중반복문, 함수, if-else문, 논리연산을 도와주는 &&, || 에 대해서 알아보기 안녕하세요! 4번째 강의입니다. 이제 포인터를 제외하면 아셔야 할 틀에 대해서 거의 아신거 같아요! 오늘 내용은 조금 어려우실 수도 있어요! 이중반복문,함수,if-else문,&&,||에 대해서 알아보겠습니다! 먼저 소스코드를 보시면 5번라인부터 볼까요? for(i=0;i
C언어 기초 문법 - 반복문, 스위치문, if문, 주석,초기화 알기 두번째 시간입니다! 최대한 빠르게 C언어 기초들을 작성하려고 합니다. 먼저 소스코드를 봅시다. 보시면 초록색 글씨가 있는걸 보실 수 있는데 저런 것을 주석이라고 합니다. 주석이란 이제 소스코드에 개발자가 추가적인 설명을 달 수 있게 해줘서 다른 개발자나 사람이 봤을 때 이해하기 쉽도록 도와주기 위해서 만들어진 것입니다. /* 반복문 if문 switch문 출력하기 */ 라고 적혀있는 것은 한 라인에 다 쓸 수 없을 때 /*(원하는 내용)*/을 통해 여러 라인을 거쳐 주석을 달게 해줍니다. //반복문 //if문 //switch문 이라고 적혀있는 것은 //(원하는 내용을 통해) 한 라인에 다 쓸 수 있을 때 주석을 달게 해줍니다. 그리고 저번 시간에 배운대로 int a = 0, b = 1, c = 0, i; ..
C언어 기초 문법 - helloworld 출력해보고 printf, scanf, 줄바꿈 이해하기 가장 먼저 C언어에서 가장 기초적으로 다뤄야 하는 문법인 printf 함수에 대해서 알아가는 시간을 가져보겠습니다. visualstudio를 켜주시고 혹은 gcc도 가능합니다. #include 를 하는 이유는 standard input output이라는 헤더파일을 포함한다라는 의미입니다. 저 헤더파일 속에 내장된 printf 함수와 scanf 함수를 사용해보려고 합니다. (헤더파일이란 미리 visualstudio 프로그램이 실행 될 때 함수들을 만들어서 모아 놓은 겁니다. ) int main() { 을 하는 이유는 C언어는 순차적으로 함수들을 실행하면서 그 함수들의 흐름대로 프로그램이 동작하도록 하는 원리로 이루어져 있습니다. 그래서 어떠한 프로그램이 동작하여도 메인 함수 내부에서 첫 시작을 하고 메인함..