전체 글 211

[환경구성]

1. JDK 설치 JDK 자바로 개발할 수 있도록 여러 기능을 모아둔 Kit 자바를 사용하기 위해선 반드시 설치해야 한다. JDK 1.8 버전 설치 로그인 해야 설치 가능 JDK설치시 JRE도 같이 설치된다. https://www.oracle.com/java/technologies/downloads/#java8-windows 환경변수 설정 설정하는 이유 참고 : https://blog.naver.com/winter6120/221000738717 JDK 설치 경로 복사 window + R 키 입력해 열린 창에 sysdm.cpl 입력 고급탭에서 '환경변수' 클릭 시스템 변수에 '새로 만들기' 클릭 변수 이름과 값을 작성한다. 시스템 변수에서 'path' 클릭 후 '편집' 클릭 새로 만들기 클릭 후 '%JAV..

[C] malloc

동적 할당 프로그램 실행 도중에 필요한 메모리 공간을 할당하고 사용 후 해당 공간을 해제하는 것 동적으로 메모리를 할당할 때는 Heap 영역에 할당된다. 헤더 : malloc void *malloc(size_t size); 메모리 할당 함수 할당 받을 메모리 크기를 인자로 받는다. 메모리 할당 성공 : 할당 메모리의 첫 번째 주소 리턴 실패 : NULL 리턴 기본적으로 void* 형으로 반환해주기 때문에, 사용자가 알맞은 용도로 변환하여 사용할 수 있다. ex) int *arr = (int *) malloc (sizeof(int) * n); 1. sizeof(int) * n : n개의 int형 메모리 할당 2. (int *) : 할당된 메모리 주소가 void*형으로 리턴된다. 리턴되는 void*를 사용하..

42SEOUL 2021.10.26

[C] 전처리기, main()

전처리기 컴퓨터 처리에 있어 중심적인 처리를 수행하는 부분을 위해 사전 준비적인 계산을 행하는 프로그램 컴파일 전에 미리 처리하는 문장 ex) #include 파일 처리를 위한 전처리문 라이브러리 폴더에서 헤더파일을 가져와 사용할 수 있게 해준다. 헤더파일 : 자주 쓰는 함수들을 저장해둔 파일 #define 형태 정의를 위한 전처리문 int main() 프로그램 작성시 기능(함수)들을 수행하기 위한 처음 시작점 모든 프로그램은 하나의 시작점만을 가지기 때문에 main 함수는 언제나 항상 하나의 프로그램 내에서는 1개여야 한다. 참고 URL https://wowon.tistory.com/61 https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blo..

42SEOUL 2021.10.26

[C] str 함수

목차 strcpy strncpy strlcpy strcmp strncmp strcat strncat strlcat strstr strlen strdup strcpy char* strcpy(char* destination, const char* origin); 헤더파일 : return : dest 문자열을 복사하는 함수로 origin에 있는 문자열 전체를 dest로 복사하는 함수 strncpy char* strncpy(char* dest, const char* origin, size_t n); strcpy와 같이 동작하는데, 문자열을 n만큼만 복사하는 함수 origin 문자수가 n 보다 적다면, 모자란 부분은 0으로 생각되어 dest에 복사된다. *** strncpy 함수는 복사시 dest 끝에 반드시 N..

42SEOUL 2021.10.12

[C] 포인터

포인터 메모리의 주소값을 저장하는 변수 포인터 선언 type *pointer_name 포인터 선언 후 참조연산자를 사용하기 전에 포인터는 반드시 먼저 초기화되어야 한다. 그렇지 않으면 의도하지 안ㅍ은 메모리의 값을 변경하게 된다. 포인터 연산자 &(주소 연산자) : 변수의 이름 앞에 사용하여 해당 변수의 주소값 반환 *(참조 연산자) : 포인터의 이름이나 주소 앞에 사용하여, 포인터가 가리키는 주소에 저장된 값 반환 다중 포인터 포인터를 가리키는 포인터를 다중 포인터라고 한다 *의 개수가 늘어난다. **ptr : 이중 포인터 ***ptr : 삼중 포인터 포인터 연산 ex) *(ptr + 1) 1을 더했지만 해당 포인터의 자료형에 해당하는 byte가 곱해져 더해지는 것이다. 메모리를 가리키므로 int 형이..

42SEOUL 2021.10.12

[Linux / shell] 명령어2

목차 쉘 변수 환경 변수 id groups sed export find wc echo ifconfig grep cut rev sort tr awk sort bc xargs 정규표현식 쉘 변수 (지역변수) 특정한 쉘 즉 bash에서만 적용도는 변수 현재 쉘에 국한되어 사용되어지는 변수로 name = value 형식으로 사용 환경 변수 (전역 변수) 운영체제가 참조하는 변수 시스템이 사용하는 변수로 시스템 상에 동작하는 프로그램의 행동에 영향을 줄 수 있는 수단이 된다. 이 변수는 터미널을 닫기 전까지 사용할 수 있지만 터미널이 닫히면 사라진다. id 현재 사용자의 실제 id, 그룹 id를 출력하며 내부 bash 변수인 $UID, $EUID, $GROUPS와 짝을 이룬다. -G : 추가 그룹의 id만 출력 ..

42SEOUL 2021.10.08

[Linux / Shell] 명령어1

목차 cat touch chmod tar dd ln Symbolic Link Hard Link kerberos ls git log git status --ignored find diff patch file cat cat file 입력시 file 내부의 내용을 출력하는 명령어 cat file touch touch file 입력시 file이란 이름의 파일이 생성된다. -t : file 의 날짜 시간을 마음대로 변경하는 옵션 -h : symbolic link파일의 시간을 변경하는 옵션 touch -t YYYYMMDDHHMM file chmod file의 읽기, 쓰기, 실행 권한을 사용자가 지정할 수 있게 해주는 명령어 --- 0 --x 1 -w- 2 -wx 3 r-- 4 r-x 5 rw- 6 rwx 7 chm..

42SEOUL 2021.10.06

3. 스택과 큐

스택 (Stack) LIFO (Last-in, First-out) 리스트 한 쪽에서만 삽입과 삭제를 수행하는 자료구조 처음 삽입된 데이터가 가장 나중에 제거된다. int stack[MAX_SIZE]; int top = -1; void push(int item){ if(top >= MAX_SIZE-1) stackFull(); stack[++top = item; } int pop(){ if(top == -1) return stackEmpty(); return stack[top--]; } top stack push(A) 0 A C push(B) 1 B pop() 0 pop() -1 pop() stackEmpty() push(C) 0 큐 (queue) FIFO (First-in, First-out) 리스트에서 ..

학교/자료구조 2021.09.28

2-2. 다항식

기호 다항식의 조작 a : cofficient (계수) e : exponenet (지수) x : variable (변수) degree(차수) : 다항식에서 가장 큰 지수 다항식 표현(1) degree (MAX 지수) coefficient 3 1 10 3 7 #define MAX_D 100 typedef struct{ int degree; float coef[MAX_D]; }polynomial; polynomial a; a.degree = 3; // a.coef[i] = a_n-i a.coef[0] = a_n-0; // 1 a.coef[1] = a_n-1; // 10 a.coef[2] = a_n-2; // 3 a.coef[3] = a_n-3; // 7 다항식 표현(2) * 0인 항이 많을 경우 유용 0 1..

학교/자료구조 2021.09.27