본문 바로가기
반응형

목록363

2019년 2월 17일 저에 대해 이야기 하고자 합니다. (4편, NC소프트 시험) 안랩에서 떨어지고 나서 '공부를 열심히 하자!!' 라고 다짐을 하게 됩니다. 하지만 이 생각은 얼마 못가고 자포자기 하게 됩니다. 3월에 '검은사막 모바일' 이라는 게임이 출시되어.... ㅡㅡ;; 친척형의 권유로 4월까지 했는데 3~4월에 대한 기억이 없습니다.^^..... 시간이 녹았어요.... + 백수다 보니..... 심지어 서버의 결투장 랭킹3등까지 했으니..... 말 다했죠...... 하.... 글을 작성하는 와중에 헛웃음이 절로 나오내요. 그 뒤로 공부에 대한 생각을 안하게 되다가 5월달에 카페 아르바이트를 하게 됩니다. (주5일 5시간) 개인이 운영하는 카페고 시급 8,500원으로 시작해서 2달만에 사장님이 일을 잘하고 매출이 올라 시급 10,000으로 올려줘서 12월달 까지 하게 됩니다. 사.. 2019. 2. 17.
2019년 2월 17일 저에 대해 이야기 하고자 합니다. (3편 안랩면접) 취업 이야기에 앞어서 저는 몇일 전까지 정말 안일한 생각을 갖고 있었습니다. 저는 개발자 라는 직업만 되고 싶었지, 어떤 분야의 개발자가 되고 싶은지 아직 결정을 안했었고 단지 제가 할줄아는 C 또는 JAVA..... 특히 C언어 관련된 개발자를 뽑는 기업으로 가고 싶었습니다. 이유는!!!! 단순했습니다. 웹쪽은 싫고, 그래서 JAVA는 별로 쓰고싶지 않았고, C언어는 개인적으로 좋아했고, C언어의 포인터 쓰는게 재미있어서!! 오직 이 이유가 몇일 전까지 있었습니다. EWBM이라는 회사는 판교에서 진행한 채용박람회 에서 알게 되었고 서류를 제출하게 되었습니다. 그리고 면접을 봤고 합격을 했죠. 이 회사는 Embedded 개발 회사로 제가 개발하고 싶은 업종중 한곳이긴 했습니다. 하지만 이 회사에서 합격통.. 2019. 2. 17.
2019년 2월 17일 저에 대해 이야기 하고자 합니다. (2편) 1편 글을 쓰다보니 글의 길이가 많이 길어져 2편으로 나눴습니다. 생각을 정리하고자 글을 썻는데 제 인생이야기를 쓰고 있었내요..... 그래서 이번에도 인생이야기에 대해 쓰려고 합니다. 개발자에 대해 진로를 정하고 복학을 하면서 프로그램 공부를 정말 열심히 했습니다. 방학때 JAVA공부를 하고, 자료구조 공부를 했지요. 과가 통신학과라 프로그램 관련 수업이 거의 없어서 전부 독학으로 했습니다. 이해 하는대 시간이 좀 걸렸지만 꼬인 실이 몇가닥 풀면 바로 풀리듯 막혔던 부분이나 이해가 안갔던 부분들이 해결 됬을 때 공부의 진도가 팍팍 나갔던 것 같습니다. 자료구조는 윤성우 저자 께서 쓰신 자료구조 책을 봤는데 다 보고 이해하는데 23일 걸렸습니다. 학교에서 개인 프로젝트를 하라는 과제를 내줘서 처음으로 J.. 2019. 2. 17.
2019년 2월 17일 저에 대해 이야기 하고자 합니다. (1편) 이 글은 제 생각을 정리하기 위한 글이고 "누군가 봤을 때 이 글을 보고 격려나 위로를 받았으면 좋겠다" 라는 취지로 쓰는 글입니다. 1993년 5월 19일에 태어나 현재 27살을 살고 있는 취업 준비생(백수) 입니다. 20살에 동양미래대학교 라는 서울에 있는 전문대 정보통신공학과를 수시로 입학하여 다니다가 21살 2월에 군입대를 했으며 운좋게도 777사령부라는 기밀부대에서 통신라인을 관리하는 통신병으로 근무하다가 22살 11월에 전역을 했습니다. 23살에 복학을 하며 반대표를 하면서 생활비를 벌기 위해 주말엔 아르바이트를 하고 자전거 타는걸 좋아해 150만원 짜리 로드 자전거를 구매한 후 동호회 활동도 했습니다. 방학땐 꾸준히 헬스를 해서 건강을 챙겼구요. 집에서 학교까지의 거리는 왕복 4시간 이었지만.. 2019. 2. 17.
[C언어 풀이] Codility - Lessons 1, (Iterations) BinaryGap 이 문제는 Codility 사이트에서 확인하고 문제를 풀 수 있습니다. https://www.codility.com/ 문제. 설명 쉽게 설명하자면 정수N을 2진수로 표현했을때 1과 1사이의 0의 Gap 즉, 0의 갯수를 구하는 문제 입니다. 단, 1과 1사이의 0의 갯수 중 가장 긴 값을 반환해야 합니다. ex) 10000001001 -> 6 100000 -> 0(1과 1사이의 0의 갯수가 아님으로) 111110 -> 0(마찬가지) 1011 -> 1 1010101 -> 1 이정도 예시와 결과면 충분히 이해하셨으라 생각합니다. 저는 C언어로 문제를 풀었고 앞으로도 C로 풀 생각입니다. 소스코드 int solution(int N) { int num = 0, count = 0, flag = 0, result .. 2019. 2. 16.
Codility 사용 방법(이용 방법) Codility 라는 '코딩 테스트' 사이트 입니다. 자신의 코딩 실력을 알아볼 수 있는 사이트 이지요. 제가 알기론 우아한형제, 이스트소프트 에서 코딩 테스트를 진행할 때 위 사이트에서 진행하는 걸로 알고 있습니다. https://www.codility.com/ 사이트 주소 입니다. 회원가입은 메일 인증만 하면 되므로 간편합니다. 취업을 위한 첫 걸음으로 생각하고 앞으로 꾸준히 올릴 생각입니다. 위 사진은 로그인 한 후 첫화면 사진입니다. 오른쪽 상단 빨간색 네모박스를 보시면 'Lessons, Challenges'가 있습니다. Lessons에선 단계별로 코딩 문제가 있으며 Challenges는 정해진 날짜에 전세계 사람들이 모여서 코딩테스트를 하는 온라인 대회? 같은 것입니다. 사진 하단에 보시면 [8.. 2019. 2. 16.
C언어] 포인터(2) 사용법 포인터의 사용법은 이렇습니다. 선언 후 초기화. int num = 10; int *p; p = # 선언과 동시에 초기화 int num = 10; int *p = # 여기서 &num은 주소 값을 전달한다는 의미 입니다. 배열도 포인터가 됩니다. int arr[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int *p = arr; printf("%d\n", p[3]); 즉 포인터 변수에 배열의 시작 주소 값을 받으면 포인터 변수는 배열처럼 사용이 가능 합니다. 그럼 여기서 의문점이 하나 생깁니다. "&arr로 주지 않고 arr로만 줬는데 주소 값이 넘어갔내?" 원래 배열의 값을 표현할 때는 arr[0] 이런식으로 표현 합니다. 하지만 뒤에 대괄호를 빼고 arr만 표.. 2019. 1. 19.
메모리 구조에 대해서(stack, heap, buffer overflow) 프로그램을 만들고 실행을 하게되면 메모리 라는 곳에 코드들이 올라가 실행되게 됩니다. 사실 메모리는 물리적 메모리(Physical Memory)와 가상 메모리(Virtual Memory)로 나뉘게 됩니다.일반적으로 코드를 실행하면 가상메모리에 적재 됩니다. 물리적 메모리는 RAM이고 가상 메모리는 HDD의 용량에서 가져와 사용하게 됩니다.운영체제는 프로그램을 실행할 때 필요한 최소정보만 RAM에 저장을 합니다.그리고 이를 Working set이라고 합니다. 그 후 프로그램을 실행하면서 필요한 데이터 정보를 가상 메모리에서 가져와상황에 맞게 물리적 메모리에 맵핑하고 맵핑을 해제하고이런 작업을 반복하게 됩니다. 이것을 페이징(Paging)기법 이라고 합니다. 가상메모리의 주소 데이터들을 일정한 크기의 블록으.. 2019. 1. 19.
c++ new의 사용법, malloc과의 차이(free, delete) ※컴퓨터의 메모리 구조를 알고 보시면 더 쉽게 이해할 수 있습니다. 메모리 구조 보러가기(클릭) 프로그램을 만들다 보면 상황에 따라 추가적인 메모리 공간을 실시간으로 확보해야 할 경우가 많습니다. 예를 들자면 채팅 대화방에 2명이 접속해 있는데 3명이 더 추가 접속을 했다거나 컴퓨터에 자료를 추가적으로 입력해 저장해야 하거나 등.... 여러가지 경우가 있습니다. 이것은 컴퓨터의 소프트웨어 사용시 변화가 유동적으로 일어나기 때문에 어찌보면 당연한 일이기도 합니다. 서론이 긴 이유는 제가 공부하고 배우면서 이 동적 메모리의 사용 이유를 제대로 파악하지 못한 채 배웠고 그로 인해 무엇이 중요한지도 제대로 모르고……. 답답한 느낌도 들고……. 무엇을 공부하거나 배울 때 목적이나 이유를 알고 지식을 습득하는 것이.. 2019. 1. 19.
객체, 인스턴스, 클래스 용어 정리!! ※클래스, 객체, 인스턴스, 인스턴스화는 분명 정의된 용어입니다. 얼추 보면 다 고만고만하고 비슷비슷해 보이지만 뜻하는 바는 다르다는걸 아시길 바랍니다!! 설명하기에 앞서 예시를 하나 보겠습니다. (직접 만들었습니다.....^^;;) 위 그림을 설명하자면.....;;; 쫄라맨이 과자를 만들 계획을 세우고 재료들을 구성하고 배합하여 과자를 만드는 과정입니다.!? 여기서 과자를 만들 계획을 세우고 어떤 재료가 들어갈지 틀을 구상하는 것이 클래스가 됩니다. 클래스를 기반으로 어떤 과자를 만들지 결정하는 단계를 객체라고 합니다. 어떤 과자(객체)를 만들지 결정했으면 그에 맞는 배합물을 넣고 섞어 완성품을 만들어내는 일련의 과정들을 인스턴스라고 합니다. 그리고 객체에서 인스턴스로 넘어가는 것을 가르켜 인스턴스화 .. 2019. 1. 17.
C++ 클래스 정의, 구조체와 차이점(접근제어 지시자) ※ 클래스를 알기전에 왜 클래스를 사용하는지 이유가 궁금하시면 객체지향 사용하는 이유(클릭)를 가보시기 바랍니다. C++에서 클래스와 비교되는 것이 구조체 입니다. 이 둘의 코드를 비교해 보겠습니다. 구조체 #include using namespace std; struct MyStruct { int num1; char arr[10]; void print(void) { cout 2019. 1. 17.
C와 C++의 차이, 절차지향과 객체지향의 차이점!!(객체지향 사용 이유) ※ 이 글은 C언어를 공부하신 후 읽으시는 것이 좀 더 이해가 빨리 될 것임을 알려드립니다. 또한 굳이 배우지 않았더라도 최대한 이해하기 쉽게 설명해 놓겠습니다. 이 둘의 차이점을 설명하기엔 너무나도 장문이 될 것 같으니 최대한 요약해서 설명해보겠습니다.! 우선 객체지향 언어를 사용한다는 가정하에 속도를 생각하시면 안됩니다. 객체지향 언어를 사용하는 이유(제가 생각하는 이유)는 다음과 같습니다. 1. 효율적인 분산 개발2. 그에 따른 각 개인의 포커싱으로 인한 질 좋은 코딩3. 서로간의 협력과 조율4. 완성 됐을 때의 유지보수 애초에 객체지향 언어는 프로그램 동작속도를 향상시키기 위해 개발된 언어가 아니라위 같이 여러명이 개발할 때 효율적인 코딩을 위해 만들어진 언어라고 생각했으면 좋겠습니다. 학교 수업.. 2019. 1. 17.
C++의 참조자 C++은 C언어와는 다르게 참조자 라는 기능이 있습니다. 이 글을 읽기 전에 '포인터' 라는 개념을 알고 넘어가야 합니다. 포인터를 모르신다면 포인터에 대한 글부터 읽고 넘어가시길 바랍니다. 포인터 보러가기~ 백문이 불여일견!! 예시부터 봅시다. #include using namespace std; void main() { int num1 = 10; int &num2 = num1; //참조자 선언 cout 2018. 6. 24.
포인터(1) 기초 이해 우리가 보통 'int num=10' 이라는 변수를 선언하면 메모리 상에는 4바이트(int형이니깐)짜리 메모리 할당이 이루어지게 됩니다. 메모리구조에 대해서는 나중에 설명하겠지만 일단 필요한 부분만 설명하겠습니다. 저희가 사용하고 있는 일반적인 PC의 메모리는 32비트 기준 0x00000000~0xFFFFFFFF까지 있습니다. (메모리는 16진수로 나타내며 10진수로 표현하면 4,294,967,296바이트를 사용할 수 있는 것입니다. ) ------------------------------------------------------------------------------------------------------------------------------------- 잡소리를 좀 하자면 ㅎㅎ Wind.. 2018. 6. 24.
C++의 자료형 bool C언어와는 다르게 C++에서는 bool이라는 자료형이 존재합니다. bool은 ture와 false를 나타내는 말로 참과 거짓을 표현합니다. C언어에서는 이것을 #define TRUE 1 #define FALSE 0 으로 자주 선언했을 것입니다. 간단한 예제를 통해서 알아보도록 합시다! #include using namespace std; void main() { if (true) { cout 2018. 6. 24.
728x90
반응형

스킨편집 -> html 편집에서