본문 바로가기

crush on study19

[C언어] # 10. 동적 메모리 할당 malloc 함수 (Stack & Heap 영역) malloc 함수를 설명하기 전에 변수가 저장되는 메모리 공간의 종류들에 대해 설명을 먼저 해보고자 합니다. 메모리 공간은 여러 가지가 있지만 대표적으로 전역변수가 저장되는 Data영역 , 지역변수가 저장되는 Stack영역. 그리고 메모리의 은행 창고의 역할을 하는 Heap영역이 있습니다. 이 글에서 쓰는 동적 메모리란 사용자가 메모리를 자유자재로 할당받는다는 것을 의미합니다. 즉, Heap영역으로부터 메모리를 필요한만큼 빌려쓰고 반환을 합니다. 이게 참 좋은게 배열을 다룰 때입니다. 예를 들어서, 대학교에서 어떤 강의의 수강생에 대한 재수강 여부를 관리하고자 합니다. 여러분들도 아시다시피 중간에 수강철회하는 사람, 새로 수강신청을 한 사람들이 있습니다. 즉, 상황에 따라 유동적으로 바뀝니다. 대략 이 .. 2022. 2. 25.
2021 LG전자 CTO 서류 / 코딩테스트 / PT면접 / 상황분석 면접 후기 (면탈) 기억을 더듬어가며 쓰는거라 생각 안나는 부분은 제외하였습니다. 0. 지원 분야 - LG전자 & 서강대학교 산학장학생 Track CTO부문 지원 (그 외에 한양대, 카이스트, 고려대 BS,VS,H&A 등등) 1. 서류 - 산학장학생이라 서류는 다른 LG그룹 양식과 다르게 문항은 1개였고 석사 진학 이유 및 연구실 선택 이유와 향후 연구계획을 1000자로 작성하는 것이었습니다. 저는 연구실 컨택까지 마친 상태라 연구실 얘기도 적었는데 대부분은 컨택안했다고 하더라구요. 인사팀에서도 컨택 안했어도 상관없다했으니 스킵하고 나머지 부분만 작성하셔도 될듯합니다. 다만, 굉장한 엑셀컷인게 느껴졌던게 서류마감한 바로 다음날 서류합격 통보를 받았습니다. 기준은 잘 모르겠습니다. 같이 지원했던 서성한라인 지인은 서탈했었던거.. 2022. 2. 25.
[C언어] # 9. 포인터에 대한 담백한 이해 (쉽게 설명) C언어를 공부하면서 가장 어려웠던 3가지 개념을 꼽으라면 동적메모리할당, 포인터, 구조체였던거 같습니다. 오늘 작성할 글은 포인터입니다. 저도 많이 부족하지만 포인터에 대한 간략한 이해를 도와보겠습니다. 포인터는 어떤 변수가 메모리 공간을 할당받고 저장되어있을 때, 그 변수가 살고있는 메모리 주소값을 가리키는 것입니다. 말 그대로 진짜 'Point!'인 셈이죠. 레이저 포인터할 때 그 포인터입니다. 우리가 어떤 변수의 초기값을 선언할 때는 항상 그 값들이 가지는 고유주소를 배정받게 됩니다. 이 주소의 값을 보는 방법은 printf를 통해 형식 지정자 "%p"를 사용하면 됩니다. 5라는 값은 현재 000000000062FE1C 라는 주소에서 살고 있군요. * 주의사항 : 앰퍼샌드 & 기호는 두개를 쓰면 '.. 2022. 2. 24.
[C언어] # 8. 배열 기초 응용 문제 (최대값 & 최소값 구하는 프로그램) : 백준 10818번 C언어 10818번: 최소, 최대 (acmicpc.net) 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net 주어진 문제는 이렇습니다. 입력받을 정수의 개수를 먼저 선언한 뒤, 정수들을 입력했을 때 최소, 최대값만 나오게 하는 것입니다. 일단 문제를 딱 읽었을 때, 배열과 조건문. 그리고 기준이 될 최대&최소 변수의 선언이 필요해보입니다. #include int main() { int i,count; int max = -1000000; int min = 1000000; scanf("%.. 2022. 2. 22.
[알고리즘] # 0. Big-O / 시간 복잡도(Time Complexity)와 거품 정렬 (Bubble Sort) 알고리즘 공부를 시작하다보면 가장 먼저 마주하는 용어가 '시간 복잡도' 입니다. 이 시간복잡도가 어떤 꼴로 나오냐에 따라 알고리즘의 좋고나쁨을 알 수 있기 때문입니다. 우리 모두 수학을 싫어하는건 알지만 그래프를 하나 보도록 하겠습니다. 너무 잘 나와있어서 설명이 필요없는 그래프긴 하나, 살펴보겠습니다. X축은 Example Scale이라 보시면 되겠습니다. 얼마나 많은 양을 처리해야하는지인데요. Y축을 보면 그 양을 처리하는데 걸리는 시간이 나와있습니다. 더보기 어? 그러면 똑같은 문제의 양이 주어졌어도 푸는데 걸리는 시간이 짧을수록 좋겠네? 맞습니다. 위 그래프에 따르면 지수 함수에 가까워질 때 비효율적이고 로그 함수에 가까워질 때 효율적임을 보입니다. 더보기 그러면 어떤 이유에서 각각의 알고리즘의 .. 2022. 2. 18.
[Test] # 6. General한 Test issue 상황 분석 및 디버깅 절차에 대하여 (1) 반도체 테스트를 진행하다 보면 수 많은 유형의 Test 불량이슈를 마주하게 될 것입니다. 그 중에서도 자주 발생하는 유형과 그에 대한 해결책을 적음으로써 하나의 메뉴얼이 되도록 돕고자 합니다. 크게 3가지 유형의 issue로 분류를 해보겠습니다. 하드웨어(HW) 이슈 (ex. 프로브카드 위의 회로 소자들 / 전압&전류&저항같은 전기적 parameter에 대한 문제 발생) 소프트웨어(SW) 이슈 (ex. 테스트 프로그램 / Time항목) 설비(Machine) 이슈 (ex. 프로브카드 솔더링 문제 / 테스트 리소스 Fail / 그 외 설비 상의 문제들) 빨간색 화살표의 의미는 이 3가지 이슈는 단독이 아니라 함께 발생할 수도 있음을 의미합니다. 그럼 제일 먼저 HW이슈를 보겠습니다. sw랑 machine쪽은.. 2022. 1. 25.