일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 새로운 언어
- Python
- OSI 7계층
- hackerschool
- GDI+
- Bionic Beaver
- Win32 apps
- RegEnumKeyExA
- 사진 화질 개선
- FTZ
- Challenge
- S시리즈
- 풀이
- 딥 러닝
- RegEnumKeyA
- 컴포넌트
- Kotlin
- 18.04
- C언어
- LDAP
- 기초 C
- 프로그래밍
- 최신 버전
- C 언어
- CISCO #TALOS
- 이미지 화질 개선
- Win32 #API
- EAPHost
- 한국 진출
- 해설
- Today
- Total
목록프로그래밍/C Language (10)
하나 하나 알아가는 프로그래밍
지난번 포스팅에선 포인터에 대한 간략한 설명과 함께 개념을 잡아봤었습니다. 이번에는 계속해서 이어서 함수에 대한 내용에 대해서 공부를 해보도록 합시다. 함수의 정의 및 호출에 대해서 먼저 알아보면 함수를 이용해서 프로그램을 작성할 경우에는 여러 가지 장점들이 존재한다. 아래 프로그램을 작성하고 실행하여보자.#include int f(int a, int b){if(a > b) return a;else return b;} void main( ){int a, b; scanf("%d %d", &a, &b);printf("%d\n", f(a,b));} -2~6 행은 f( ) 함수를 정의한 부분으로, 함수는 반드시 사용하기 전에 정의를 해야 하기 때문에 프로그램의 위쪽에서 먼저 작성되어집니다. -12행에서 f(a,..
지난 시간에 배열의 개념과 활용 방법에 까지 정리를 해봤습니다. 충분히 연습을 하셨다면 이제 어느정도 C라는 언어에 점차 익숙해져가는 단계라고 생각하시면 되겠습니다. 개념적인 부분은 사실상 포인터를 끝으로 거의 마무리가 되어지게 됩니다. 후에 나올 함수, 구조체 / 공용체, 파일 입출력 등은 기존에 배운 내용을 활용하는 것들이기 때문에 이 포인터로 끝을 낸다라고 생각하시면 좋을 껏 같습니다.간단하게 포인터가 무엇인지에 대해서 설명을 먼저 해보도록 하겠습니다. 포인터는 데이터가 저장된 메모리상의 주소를 이야기합니다. 배열의 이름, 첨자를 대신할 때 이 포인터를 사용합니다. 포인터 변수는 포인터를 저장할 수 있는 변수로, 포인터 변수를 이용하면 다른 변수의 값에 접근할 수 있습니다. 포인터 변수의 자료형은 ..
지난번 포스팅에선 배열의 기초에 대해서 알아봤습니다. 오늘은 배열의 활용 파트에 대해서 이야기를 해보려고 합니다. 지난 시간에 배웠던 배열의 개념에 대해서 잠시 간단하게 짚고 넘어가자면, 배열(array)이란? 같은 종류의 여러 개 데이터를 연속적으로 처리하기 쉽게 나열한 것을 말합니다.배열은 정수형, 문자형 등 같은 자료형에 배열 이름을 지정하여 선언이 가능합니다. 배열을 이용하면 같은 형태의 데이터 집합을 손쉽게 다룰 수 있으며 개수만큼 주소와 공간을 할당하므로 많은 양의 데이터를 읽거나 저장하는 작업 등을 손쉽게 할 수 있습니다. 여러 데이터가 저장되어 있을 경우 가장 큰 값이나 작은 값 등을 구할 때 배열과 반복문을 활용하면 편리합니다.아래 코드를 보고 입력해봅시다. #include int mai..
한학기 동안 많은 일들이 있어 Tistory 관리를 잘 하지 못했습니다. 전에 포스팅 했던 내용에 이어서 배열 부분부터 정리를 해보도록 하겠습니다. 지난번 포스팅까지는 반복문에 대해서 다루어 보고 알아갔는데요 이번 시간에는 이어서 나오는 배열의 개념에 대해서 천천히 알아보도록 합시다. 배열 단원부터는 사실상 프로그램을 짤 수 있으며, 프로젝트를 구축하여 프로그램들을 개발하며 C에 대해서 조금씩 깊이있게 알아가는 단원이라 할 수 있습니다. 원래는 포인터 부분까지 같이 내용을 담을려고 했으나 포인터 부분의 경우에는 챕터 하나에 담을 수 없을 만큼 정말 중요한 내용이 많은 부분으로 차후 포인터 부분만을 전문적으로 다룬 글을 한번 게시할 예정입니다. 배열(array)은 같은 종류의 여러 개 데이터를 연속적으로 ..
*요 며칠 새에 시험 준비를 비롯해서 이런저런 일이 많이 일어나는 바램에 이제서야 블로그에 글을 다시 정리해서 올리게 되었습니다. 앞으로는 좀 더 성실성있게 포스팅을 할 수 있도록 노력하겠습니다.* 지난번 포스팅까지는 조건문에 대해서 다루어 보고 알아갔는데요 이번 시간에는 이어서 나오는 반복문에 대해서 천천히 알아보도록 합시다. 반복문에는 while문 do while문 for문 중첩 for문 그리고 break, continue 개념까지 알아야 할 부분들이 여러가지 존재합니다. 사실 조건 / 반복문 파트를 공부하면서 많이들 느끼셨을 꺼라 생각하지만 이 파트부터 전과 비교해 배우고 다뤄야 할 부분에 눈에 띄게 늘어났습니다. 때문에 집중해서 유의하시고 공부를 하시면 좋을 것 같습니다. 참고로 저는 while과..
여기까지 포스팅을 보신 분들께 먼저 수고하셨다는 말씀부터 드리겠습니다. 이번 포스팅을 기준으로 이제 C의 기초 부분의 중반까지 오셨다고 생각을 하시면 됩니다. 기본적으로 이 부분부터 심화적인 내용에 접하게 되며 기존에 배우셨던 전반적인 내용을 사용해서 간단한 프로그램 구현이 가능하시게 될 것입니다. 포스팅 수가 얼마되지 않지만, 비교적 교본에 비해서 최대한 빨리 정리해서 올려둔 것이기에 좀 더 빠르게 조건문까지 들어올 수 있었던 것 같습니다. 조건문은 내용이 많기 때문에 저는 최대한 간추려서 올릴 것입니다. 부족한 부분이 있는 것 같다고 느껴지시면 직접 찾아보시면서 전문 서적 혹은 강의를 참고하시여 깊게 들어가시기 바랍니다. 조건문에는 종류가 굉장히 많은 데 먼저 if를 이용한 조건문부터 차근 차근 알아..
본 내용에 들어가기 전에 한 가지 퀴즈를 내도록 하겠습니다. 아래 글자를 해석해보세요. 7JWI64WV7ZWY7IS47JqUISDrsJjqsJHsirXri4jri6ReXg== 이 형식이 뭔지 모르시는 분은 구글에 "Base64"를 검색해보시면 도움이 되실 겁니다. 먼저 C 언어 프로그램의 구조에 대해서 이야기를 해보도록 하겠습니다. C의 문법은 엄격하면서도 단순합니다. 몇 가지 종류의 문장과 명령어, 단어들만 사용하면, 다양한 프로그램을 작성하는 것이 가능합니다. 아래 기재해둔 소스 코드를 보시면 쉽게 파악이 가능하실 겁니다. #include int main() { int a = 3; int b = 5; a = a + 7; b = b + 5; if(a > 5 && b > 7) { printf("%d %d..
저번 시간에 아주 간략하게 나왔던 자료형에 대해서 이번에는 좀 더 깊게 들어가보도록 하겠습니다. 일단 간단하게 C에서, 프로그래밍 언어에서 자료형이란 무엇인지부터 짚고 넘어가보도록 하겠습니다. C언어에서의 자료형 (Data type)이란? 쉽게 말해 변수의 종류를 말합니다. 변수에 대해서는 저번 포스팅에서 짚고 넘어왔으니 따로 정리하진 않겠습니다. 대게 대부분 기본 자료형과 파생 자료형 두 가지로 분리하여 생각을 하게되는 데 기본이 되는 기본형을 먼저 알아보도록 하겠습니다. 이 기본형에는 앞서 배웠던 정수형 변수와, 실수형 변수를 떠올려보시면 됩니다. 어렵게 생각할 것이 전혀 없습니다. 이 두 가지가 아주 기본적인 기본형 자료형이며 이 밖에 나열형과 무치형이 존재하는 데 이 둘에 대해서는 깊게 들어가지 ..
이번에는 C에서의 상수와 변수에 대해서 알아보도록 하겠습니다. 진도가 왜 이렇게 빨라? 하시는 분들 계실 껏 같은 데 대부분의 시중에 판매되는 교본 그리고 학생들이 사용하는 교과서 모두 이런 식으로 진도를 나갑니다. 물론 저는 초보자이기도 하고, 오로지 저와 비슷한 초급자 분들의 입장에서 이야기를 할 것이기 때문에 포스팅 내용이 어렵진 않겠지만 진도 부분은 공부를 제대로 하시겠다면 따라와주셔야 합니다. 상수와 변수는 이해를 한다면 정말 간단한 개념입니다. 동시에 아주 중요한 첫 개념이기도 하구요. 일전에 printf 함수를 이용하여 "Hello world"를 제대로 오류 없이 출력하셨다면 이 개념 또한 어렵지 않게 이해하실 수 있으실 꺼라 생각합니다. 일단 들어가기에 없어 예문 코드를 먼저 하나 보도록 ..
어떤 언어든 시작할 때 거의 사용되는 "Hello World!" 예제. 1978년에 브라이언 커니핸과 데니스 리치가 쓴 "The C Programming Language" 교재의 첫 번째 예제가 화면에 "Hello, world!"를 출력하는 것이었고, 이것이 유명해지면서 모든 프로그래밍 언어의 첫번째 예제로 굳어지게 되었습니다. 저 역시 처음 시작은 이 코드를 통해서 시작을 하게 되었습니다. 이 "Hello, world!" 예제는 코딩을 처음 해보시는 분들도 충분히 하실 수 있을 정도로 쉽기 때문에 그냥 처음에는 제 소스 코드를 보고 따라 치시면 됩니다. 개인적으론 처음 시작하시는 상황이라할 때 개발 환경은 윈도우의 Dev C++를 이용하시기를 권해드리겠습니다. 가장 간편한 인터페이스를 가지고 있으며 초..