Unborn 8.0 Yellow Pointer
본문 바로가기

전체 글143

[42Seoul/B2br] 데비안 11.0 설치 0. 설치 환경 가상 머신 : VirtualBox6.1.18 Host OS : Max Guest OS : Debian 11bullseye (amd64) 참고 시스템 요구 사항 https://www.debian.org/releases/stable/amd64/ch02s05.ko.html 최소 하드웨어 요구 사항 https://www.debian.org/releases/stable/amd64/ch03s04.ko.html 1. 설치 파일 공식 웹 사이트에서 ISO 파일 다운 받기 (netinst CD 이미지 - amd64 선택) https://www.debian.org/releases/bullseye/debian-installer/ 데비안 -- 데비안 “bullseye” 설치 정보 데비안 11.3 설치 데비안을.. 2022. 6. 27.
[42Seoul/B2br] 프로젝트 소개 1. 프로젝트 소개 이 프로젝트는 여러분에게 가상화의 멋진 세계를 소개하는 것을 목표로 합니다. 특정 지침에 따라 VirtualBox(VirtualBox를 사용할 수 없는 경우 UTM)에서 첫 번째 시스템을 생성합니다. 그러면 이 프로젝트가 끝나면 엄격한 규칙을 구현하면서 자신만의 운영 체제를 설정할 수 있습니다. 2. 규칙 VirtualBox(또는 VirtualBox를 사용할 수 없는 경우 UTM)의 사용은 필수입니다. 저장소의 루트에 있는 signature.txt 파일만 제출하면 됩니다. 컴퓨터의 가상 디스크 서명을 붙여 넣어야 합니다. 제출로 이동하고 자세한 내용은 동료 평가를 참조하십시오. 3. 필수 이 프로젝트는 특정 규칙에 따라 첫 번째 서버를 설정하는 작업으로 구성됩니다. 최소한의 서비스로 .. 2022. 6. 27.
[42Seoul/GNL] 사전 지식 1. File Descriptor? 운영체제가 파일 또는 하드웨어와의 통신을 하기 위해 부여하는 숫자로 일반적으로 음수가 아닌 정수 값을 가지고 있으며, 반환된 값을 이용하여 이후에도 그 파일을 접근이 가능합니다. 파일 디스크립터는 기본적으로 아래와 같은 값을 사용하고 있어 숫자 3부터 오름차순으로 디스크립터를 부여합니다. 0 : 표준 입력 (STDIN_FILENO;stdin) 1 : 표준 출력 (STDOUT_FILENO;stdout) 2 : 표준 오류 (STDERR_FILENO;stderr) 2. open()? #include int open(const char *path, int oflag); path : 파일 경로 이름 oflag : 파일을 열 때 사용할 옵션 O_RDONLY : 읽기 전용 -> G.. 2022. 5. 22.
[42seoul/GNL] get_next_line 프로젝트 소개 보호되어 있는 글 입니다. 2022. 5. 20.
[DS/자료구조] 연결 리스트 - 다항식 계산 구현 다항식 계산 구현 #include "../include/polynomial.h" LinkedList*multiply(LinkedList *aList, LinkedList *bList) { intalen = getPolynomialListLength(aList) - 1; intblen; LinkedList*newList = createPolynomialList(); ListNode*newNode = calloc(1, sizeof(ListNode)); ListNode*aHeadNode = aList->headerNode.pRLink; ListNode*bHeadNode; while(alen--) { blen = getPolynomialListLength(bList) - 1; bHeadNode = bList->.. 2022. 4. 22.
[DS/자료구조] 연결 리스트 - 이중 연결 리스트(Doubly Linked List) 이중 연결 리스트(Doubly Linked List) 이중 연결 리스트는 각 노드가 노드와 노드가 서로 연결되어있다. 단순 연결 리스트와 다르게 이전 노드와 다음 노드로 구성되어있다. 선행 노드에 접근하기 위해 전체 리스트를 순회해야 하는 문제를 보완하기 위해 이중 연결 리스트가 있다. 좀 더 확대된 개념으로, 다중 연결 리스트(Multi Linked List)라는 말도 쓰인다. 특징 양쪽 방향으로 쉰회할 수 있도록 노드가 연결되어 있다. 두 개의 링크필드와 한 개의 데이터 필드로 구성되어있다. 장점이 크므로 이중 연결 리스트를 많이 사용한다. 장점과 단점 장점 연속적인 탐색이 이루어져야 하는 경우 탐색 시간을 줄일 수 있다. 삽입이나 삭제 연산이 빠르다.(접근 시작 위치 설정에 따라) 단점 포인터를 위.. 2022. 4. 21.
[DS/자료구조] 연결 리스트 - 원형 연결 리스트(Circular Linked List) 원형 연결 리스트(Circular Linked List) 원형 연결 리스트는 일반적인 연결 리스트에 마지막 노드와 처음 노드를 연결시켜 원형으로 만든 구조이다. 원형 연결 리스트에서 head는 마지막 노드를 가리키게 된다. 이렇게 되면 head의 첫 노드와 마지막 노드에 접근이 쉬워진다. 특징 헤드 노드의 link는 마지막 노드를 가리킨다. 헤드 노드의 link의 link는 첫 번째 노드가 된다. 리스트의 마지막에 노드를 삽입, 삭제가 용이해진다. 현재 노드에서 이전 노드를 접근하려면 첫 번째 노드부터 다시 접근해야 한다. 장점과 단점 장점 한 노드에서 다른 모든 노드로의 접근이 가능해 노드의 삽입, 실제가 단순해진다. 반복적인 순회에서 연결 리스트의 끝을 체크해야 할 필요가 없다. 구조상 끝이 존재하지.. 2022. 4. 21.
[42Seoul/ft_printf] 프로젝트 구현 1. 프로젝트 구조 mandatory part만 진행했으며 전체적인 구조는 아래와 같다. 📦ft_printf ┣ 📂includes ┃ ┗ 📜ft_printf.h ┣ 📂libft ┃ ┣ 📜ft_strlen.c ┃ ┣ 📜libft.h ┃ ┗ 📜Makefile ┣ 📂srcs ┃ ┣ 📜ft_checkbase.c ┃ ┣ 📜ft_formats.c ┃ ┣ 📜ft_printbase.c ┃ ┣ 📜ft_printf.c ┃ ┗ 📜ft_printstr.c ┣ 📜Makefile 2. 프로젝트 구현 libft 사용함수는 ft_strlen만 사용했고 사용하는 함수에 맞게 libft.h와 Makefile을 수정했다. - ft_printf.h #ifndef FT_PRINTF_H # define FT_PRINTF_H # include .. 2022. 4. 19.
[42Seoul/ft_printf] 서식지정자 (format specifier) 1. 서식지 정자 printf, sprintf, fprintf에서 사용하는 서식 지정자(format specifier)는 다양한 활용법이 있다. %[플래그][폭][. 정밀도][길이] 서식지정자 printf는 위와 같이 서식지정자를 조합해서 사용할 수 있다. 다양한 서식지정자가 있으나, ft_printf에서 구현할 서식 지정자는 c, s, d, i, u, p, x, X, % 이다. c : 문자, (va_arg type, int) s : 문자열, (va_arg type, char *) d, i : 부호 있는 10진 정수, (va_arg type, int) u : 부호 없는 10진 정수, (va_arg type, unsigned int) p : 포인터 메모리 주소, (va_arg type unsigned lo.. 2022. 4. 19.
[42Seoul/ft_printf] 가변인자(variable argument) 가변 인자란? 이번 ft_printf 프로젝트를 진행하면서 알아야 할 개념은 가변 인자이다. 매개변수의 개수가 정해지지 않은 함수에 들어가는 인수(argument)의 개수가 변하는 것을 가변 인자(가변 인수, variable argument)라고 한다. - 가변 인자 작성 방법 예 반환값 자료형함수이름 (자료형 고정매개변수, ...) { 코드 } 함수에서 가변 인자를 정의할 때는 고정 매개변수가 한 개 이상 있어야 하며 고정 매개변수 뒤에 ... 을 붙여 매개변수의 개수가 정해지지 않았다는 표시를 해준다. 또한 가변 인자 뒤에는 다른 매개변수를 저장할 수 없다. ft_printf의 경우 아래와 같이 쓰일 수 있다. #include #include intft_printf(const char *format,.. 2022. 4. 18.
[42Seoul/ft_printf] 프로젝트 소개 보호되어 있는 글 입니다. 2022. 4. 18.
[DS/자료구조] 리스트 - 배열 리스트와 연결 리스트 배열 리스트와 연결 리스트 리스트(List) 리스트는 자료를 순서대로 저장하는 자료구조이다. 리스트를 구현하는 방법에는 배열을 이용하거나 포인터를 이용하여 리스트를 구현할 수 있다. 기본적인 기능으로는 리스트 생성, 원소 추가, 원소 반환, 원소 제거(리스트 초기화), 리스트 삭제로 볼 수 있다. C언어의 경우 리스트를 지원하지 않는 대신 배열을 지원한다. 즉, 리스트를 사용하려면 직접 만들거나 라이브러리를 사용해야 한다. - 리스트의 대표 기능 엘리먼트를 추가/삭제하는 기능 리스트에 데이터가 있는지 체크하는 기능 모든 데이터에 접근할 수 있는 기능 배열 리스트(ArrayList) 배열은 인덱스와 번호에 대응하는 데이터들로 이루어진 자료 구조를 나타낸다. 일반적으로 배열에는 같은 종류의 데이터들이 순차적.. 2022. 4. 17.
[42Seolu/Libft] Tester 사용한 테스터기 https://github.com/Tripouille/libftTester https://github.com/jtoty/Libftest https://github.com/alelievr/libft-unit-test https://github.com/y3ll0w42/libft-war-machine makefile에서 lilink방지를 해서 보너스 파트 테스터기가 될 때도 있고 안될 때도 있는데, 기본적으로 모든 함수가 테스트 가능하니 확인해 보는 것이 좋다. 틀린 부분은 해당 테스터 폴더 안에 입력값과 출력 값에 대한 예시가 나오기 때문에 어느 부분에서 실수를 했는지 확인해 볼 수 있어서 좋았다. 슬랙을 찾아보면 해당 테스터를 모아놓은 파일이 있는데 그걸 사용하는 것도 좋다! 평가를 받을 .. 2022. 4. 17.
[Libft] Part1 : calloc, strdup [이전 글] [Libft] 나만의 첫 번째 라이브러리 1. 프로젝트 소개 C 프로그래밍을 할 때 매우 유용한 표준 함수들을 사용할 수 없다면 굉장히 지루할 거예요. 이 프로젝트를 통해 이러한 표준 함수들을 구현하고, 이해하고, 어떻게 사용하는지 bini-079.tistory.com [다음 글] [Libft] Part2 : Additional functions 삐니의 소소한 일상 [Libft] Part2 : Additional functions 본문 42 SEOUL/Libft [Libft] Part2 : Additional functions 에삐니 2022. 3. 24. 01:22 Prev 1 ··· 3 4 5 6 7 8 9 10 11 ··· 106 Next bini-079.tistory.com Part1.. 2022. 4. 11.
[블록체인] 기초 (블록체인이란, 블록체인 장점과 단점) 블록체인의 탄생 2008년 금융위기 시점을 이후로 2009년에 비트코인이 나오게 되었습니다. 서로 모르는 사람들끼리도 신뢰가 있게 거래할 수 있다는 것입니다. 탈중앙이면서 신뢰할 수 있는 것입니다. 즉, 중앙에 은행 등 기관을 신뢰할 수 없는 부분이 생기면서 나타나게 된 것입니다. 블록체인이란 무엇인가 ? 블록체인(block chain)은 피어(peer) 참여자들 간의 트랜잭션으로 이루어진 탈중앙화 시스템에 신뢰를 구축해주는 기술입니다. 관리 대상 데이터를 소규모 데이터인 블록들이 P2P 방식의 기반으로 생성된 체인 형태의 연결고리 기반 분산 데이터 저장 환경에 저장하여 누구라도 임의로 수정할 수 없고 누구나 변경의 결과를 열람할 수 있는 분산 컴퓨팅 기술 기반의 원장 관리 기술입니다. 이는 근본적으로 .. 2022. 4. 11.
728x90
반응형