본문 바로가기

Crush on Study253

[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.
[C언어] # 7. 1차원 배열 & 2차원 배열 (array 함수) / 문자열에 대하여 printf("Welcome, Let's C Language."); // 초등학생도 쉽게 이해시켜주는 C언어 글을 포스팅합니다. 안녕하세요. 비전공자 출신 SW Test 엔지니어 Crush on Study입니다. 이번 글에서는 조건에 따라 다른 화면을 출력시킬 수 있도록 해주는 '조건문'에 대해 배워보겠습니다. Q. 먼저 이전 시간에 배운 내용을 잠깐 복습해봅시다. A. 1) Switch문에 대해 배웠습니다. - Switch문은 트리거를 생성하여 어떤 값을 입력하냐에 따라 다른 결과를 출력할 수 있도록 생성한 문법입니다. if문과 비슷한 개념이지만 여러개의 다중조건을 처리하고자할 때는 Switch문이 코드도 좀 더 깔끔한 느낌입니다. 통상적으로는 if문을 많이 쓰긴하나, switch문도 알아둘 필요가 있.. 2022. 1. 27.
[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.
[Test] # 5. 테스트 리소스에 대하여 사용하는 ATE에 따라 리소스들의 이름은 다르지만 기능은 모두 비슷비슷합니다. 제가 이번에 설명하고자하는 리소스는 미국의 테스트 장비사 Teradyne의 ETS시리즈에 기반하여 설명하겠습니다. T사의 ATE가 가지는 테스트 리소스는 다음과 같은 유형들로 구성됩니다. 1. SPU100 전압,전류를 Forcing&Sensing 하는 채널들로 구성되어있고 전압과 전류의 range가 비교적 작습니다. (일반적으로 수십 볼트, 수십 밀리암페어 단위) 2. SPU500 SPU100과 다르게 고전압 (수백 볼트) 고전류 (수 암페어) range를 갖고 있습니다. High Voltage Product를 테스트하고자 할 때 사용합니다. (ex. 자동차) 3. APU SPU100과 비슷하나 채널 수에서 차이가 있습니다. .. 2022. 1. 23.