본문 바로가기

언어77

[Python 기본 공부정리] 3-3. 자료형-리스트(list) 공부 내용을 정리하는 목적 이므로 참고용으로만 읽어 주시기 바랍니다. 틀린 부분에 대한 지적은 감사합니다. 1. 리스트(list) 리스트는 여러 데이터를 하나로 모아 하나의 변수로 관리할 수 있도록 도와준다. 배열과 비슷하게 생각되지만 배열은 같은 데이터 타입끼리의 집합이지만 리스트에는 데이터 타입에 관계없이 모아서 관리할 수 있다. 문법) 리스트명 = [데이터 1, 데이터 2,....] 리스트의 요소로 다양한 값들이 가능하고 리스트 안에 리스트나 변수 등도 가능하다. 아무런 값도 없는 빈 리스트 또한 선언 가능하며 다른 방법으로는 변수명 = list()가 존재한다. 2. 리스트 인덱싱, 슬라이싱 리스트도 문자열처럼 인덱싱과 슬라이싱을 적용할 수 있다. 0번 인덱스가 첫 번째의 요소를 가리키며 인덱스 번.. 2019. 12. 1.
[C++ 기본 공부정리] 9. 구조체(struct) 공부 내용을 정리하는 목적 이므로 참고용으로만 읽어 주시기 바랍니다. 틀린 부분에 대한 지적은 감사합니다. 1. 구조체 어떤 객체를 표현할때 1가지의 변수 만으로는 부족한 경우가 있다. 예를 들어 학생이란 객체를 표현 하려한다면 이름, 나이, 학교, 학년, 학번, 전공 등등의 다양한 특징에 대한 변수가 필요하게 된다. 학생이 1명뿐이라면 이렇게 6개변수를 일일이 선언하여 사용하여도 상관없지만 학생수가 많아 진다면 학생이 추가될때마다 일일이 새롭게 6개 변수를 추가해야 한다. 이런 점을 극복하기 위해 C++에서는 여러 개별 변수를 그룹화 하여 하나의 데이터 유형으로 생성할 수 있는 구조체를 제공한다. 배열이 같은 타입의 변수 집합이라고 한다면, 구조체는 다양한 타입의 변수 집합을 하나의 타입으로 나타낸 것.. 2019. 12. 1.
[C++ 기본 공부정리] 8. 문자열(string) 공부 내용을 정리하는 목적 이므로 참고용으로만 읽어 주시기 바랍니다. 틀린 부분에 대한 지적은 감사합니다. 문자열(string) 이란 여러 문자(character)들의 집합이다. c++에서 이 문자열을 사용하는데 2가지 방법이 있다. 첫 번째는 C언어 스타일로 char형 배열에 문자열을 저장해 배열을 문자열처럼 사용하는 것과 두 번째는 표준 라이브러리에 존재하는 string 클래스를 이용하는 것이다. 1) NULL문자 C++에서 문자열 변수는 문자열의 끝을 프로그램에 따로 알려주어야 한다. 그래야 프로그램이 문자열에 속한 값과 그 외의 쓰레기 값을 구분할 수 있다. 따라서 문자열의 끝을 의미하는 문자를 하나 더 삽입해 주는데 이 문자를 널(NULL) 문자라고 하며, \0으로 표시한다. 널 문자의 유무로 .. 2019. 11. 29.
[Python 기본 공부정리] 3-2. 자료형-문자열(string) 공부 내용을 정리하는 목적 이므로 참고용으로만 읽어 주시기 바랍니다. 틀린 부분에 대한 지적은 감사합니다. 1. 문자열(string) 문자열이란 유니코드로 이루어진 a,b,c,ㄱ,ㄴ 같은 문자나 단어로 이루어진 집합이다. 파이썬에서는 문자열 이용에 다양한 방법을 제공한다. ""(큰따옴표), ''(작은따옴표)를 이용해 4가지의 방법으로 문자열을 만들 수 있다. "' 이렇게 두개를 혼용하면 안된다. 총 4가지의 선언 방법이 있는 이유는 문자열 데이터를 만들때 쓰는 ""와''를 문자열 안에 쓸 경우를 대비한 것이다. 문자열에 작은따옴표를 사용할 경우 문자열 전체를 큰따옴표로 감싸고 큰따옴표를 사용할 경우 작은 따옴표로 감싸면 된다. 또 다른방법은 " 나 ' 앞에 역슬레쉬를 붙여줄 경우 문자열을 둘러싸는 기호가.. 2019. 11. 28.
[C++ 기본 공부정리] 7. 동적할당(dynamic allocation) 공부 내용을 정리하는 목적 이므로 참고용으로만 읽어 주시기 바랍니다. 틀린 부분에 대한 지적은 감사합니다. 동적할당에 대해 이해하기 위해 메모리의 구조에 대해 알아야 한다. 변수등을 생성하게 되면 메모리에 공간을 할당 받는대 메모리 메모리 영역이 구분되어있고 각 영역마다 하는 역할이 다르다. 메모리는 크게 사용자 영역과 커널 영역이 나뉘어 있다. 사용자 영역은 하나의 프로세스에 할당되는 메모리 공간의 일부 영역이며, 프로그램이 동작하기 위해 사용되는 메모리 공간(코드 영역, 데이터 영역, 스택 및 힙 영역)을 가리켜 사용자 영역(User 영역)이다. 커널 영역은 하나의 프로세스에 할당되는 총 메모리 공간 중에서 유저 영역을 제외한 나머지 영역이며, 운영체제라는 하나의 소프트웨어를 실행시키기 위해서 필요한.. 2019. 11. 23.
[C++ 기본 공부정리] 6. 포인터(pointer) 공부 내용을 정리하는 목적 이므로 참고용으로만 읽어 주시기 바랍니다. 틀린 부분에 대한 지적은 감사합니다. 포인터를 이해하기 위해 주소 값이 무엇인지 알아야 한다. 변수 등에서 어떤 데이터를 저장하기 위해 메모리에서 저장할 공간을 할당받는다. 그럼 이 데이터를 찾아서 호출하기 위해서는 이 데이터가 메모리 어느 부분에 저장되어 있는지를 알아야 한다. 이때 데이터가 저장된 메모리의 시작 주소를 주소 값이라고 한다. 예를 들어 int형 데이터를 저장하기 위해 변수를 하나 선언했다면 4 bytes 크기로 메모리에 공간이 할당된다. 주소: 0x0001 / 변수로 할당 받은곳 주소: 0x0002 / 변수로 할당 받은곳 주소: 0x0003 / 변수로 할당 받은곳 주소: 0x0004 / 변수로 할당 받은곳 주소: 0x.. 2019. 11. 22.