분류 전체보기

C#/기본기

[C#] 데이터 형변환(캐스팅)

문자열 → 숫자열 1. Convert.ToInt32() string a = "123"; int b = Convert.ToInt32(a); 2. Parse() Parse는 문자열을 숫자로의 변환이 실패하면 예외(exception)을 던짐 예외가 던져지면 프로그램은 현재 코드의 실행을 멈추고 흐름을 다른 곳으로 이동 string a = "123"; int b = int.Parse(a); 3. TryParse() 애초에 변환의 성공 여부를 반환해서 코드 흐름 유지 가능 변환한 데이터는 두번째 매개변수에 저장(out키워드로 수식되어 있다) string a = "123"; int.TryParse(a, out int b) 이전에 b 를 선언하지 않더라도 출력전용 매개변수(out으로 수식한) int b에 변환한 데이..

C#/기본기

[C#] 박싱과 언박싱

object 형식 • 모든 데이터 형식(프로그래머들이 만드는 데이터 형식마저도)이 자동으로 object 형식으로부터 상속받음 • 즉 object형식은 모든 데이터 형식의 부모 • 따라서 컴파일러는 어떤 형식의 데이터라도 object에 담아 처리 가능 • obect형식은 참조형식 ex) object a = 123; object b = "hello" 모두 가능 박싱과 언박싱 obect형식은 참조형식이기 때문에 힙에 데이터를 할당, int 나 double은 값 형식이기 때문에 스택에 할당 그럼 값 형식 데이터를 object형식에 담으면 어디에 할당될까 스택? 힙? object가 값 형식의 데이터를 힙에 할당하기 위해 "박싱 기능" 제공 박싱 : 값 형식을 object 형식에 담아 힙에 올리기 object a ..

C#/기본기

[C#] 값 형식과 참조 형식 - stack과 heap

object 데이터 타입의 박싱과 언박싱, 클래스(참조 형식), ref키워드, struct의 깊은복사 등 앞으로 나올 여러 C#문법들이 값과 참조, 스택과 힙의 차이에 기반해 설명되기 때문에 이 차이를 확실히 알아야 할 필요가 있습니다. 데이터 형식은 값 형식과 참조형식으로 분류 할 수 있습니다. stack 과 heap은 C#으로 작성한 프로그램이 사용하는 두가지 메모리 영역입니다. 결론을 간단히 설명하자면 , • 값 형식의 변수는 값 데이터를 직접적으로 스택(stack) 메모리에 저장합니다. • 참조 형식의 변수는 힙과 스택을 함께 이용하는데, 힙 영역에는 데이터를 저장하고 스택 영역에는 데이터가 저장된 힙 메모리의 주소를 저장합니다. 즉 값 형식과 참조 형식은 데이터를 스택에 넣느냐, 힙에 넣느냐가 ..

C#/기본기

[C#] C#의 구조

C++ 와 C#의 차이 C#의 구조와 실행방식을 살펴보기 전에, C++과 C#의 차이를 알아보겠습니다. C++ C# 메모리 관리를 프로그래머가 직접 • 메모리 할당 • 데이터 R/W (읽고 쓰기) • 해제 (방 빼주기) 메모리 할당과 데이터 R/W는 직접, 해제는 가비지 콜렉터가 해준다 플랫폼 이식도 프로그래머의 책임 CLR이 직접. 우리는 편하게 코드 작성 (아래에 CLR과 함께 더 자세히 설명합니다) 일관성 없는 라이브러리 일관된 클래스 라이브러리 C# 컴파일러 C# 컴파일러 : C# 소스코드를 분석해서 그 결과를 .NET용 IL코드(중간언어)로 생성하는 프로그램 코드언어 → (컴파일러)→ IL코드→ CLR이 읽음 → 기계어 → 컴퓨터가 읽음 표에서 C#은 C++과 다르게 CLR을 가지고 있고, C#..

Git&Github

깃(Git)과 깃허브(Github) 공부하기 - 4 (Github)

이전 글 깃(Git)과 깃허브(Github) 공부하기 - 1 깃(Git)과 깃허브(Github) 공부하기 - 2 (branch) 깃(Git)과 깃허브(Github) 공부하기 - 3 (원격저장소) https://github.com/ GitHub: Let’s build from here GitHub is where over 94 million developers shape the future of software, together. Contribute to the open source community, manage your Git repositories, review code like a pro, track bugs and feat... github.com git/git을 검색하면..

Git&Github

깃(Git)과 깃허브(Github) 공부하기 - 3 (원격저장소)

이전 글 깃(Git)과 깃허브(Github) 공부하기 - 1 깃(Git)과 깃허브(Github) 공부하기 - 2 (branch) Github 원격저장소를 사용하기에 앞서, git bash 콘솔에서 원격저장소를 사용해보고 원리를 파악해보자 - 소스코드와 버전을 백업하고 인터넷을 통해 서로 다른 컴퓨터에서 협업이 가능한 - 지역 저장소와 동기화되어 연결되는 1. 워킹 디렉토리 (깃 실습 가장 상위 디렉토리) 생성 mkdir gitfth3 > gitfth3 폴더가서 f1.txt생성 (vim f1.txt), 내용아무거나 입력> git add f1.txt > git commit -m 1 2. git init local(local이라는 이름의 디렉토리명) => gitfrh3/ local/ .git 의 구조로 디렉토..

Git&Github

깃(Git)과 깃허브(Github) 공부하기 - 2 (branch)

이전 글 깃(Git)과 깃허브(Github) 공부하기 - 1 여러갈래로 뻗는 나뭇가지 예를들어 언제 필요할까? - 원래 소스코드는 그대로, 그리고 그 코드를 더럽히지 않으면서 고객을 위한 코드를 추가할 때 사용 file.xsl / file_client.xslex - 나중에 버릴 것 같은 기술 추가할 때 브랜치를 만들어서 진행하면 버릴때 깔끔 - 새로운 branch 생성 : git branch -> git branch exp - 브랜치 이동 : git checkout -> git checkout exp => 이동을 하더라도 그전 상태 master브랜치의 상태(만들어 놓은 버전들)를 그대로 가져간다. 브랜치 개념 이해 및 상황예시 1. master 브랜치에서 r1.txt (버전1)을 만든다. 2. exp 브..

Git&Github

깃(Git)과 깃허브(Github) 공부하기 - 1 (깃)

버전관리, 백업, 협업의 기능을 제공하는 깃 간단하게 텍스트 파일을 저장소에 등록하는 실습을 해보겠습니다 이 실습은 크게 git init (초기설정) -> git add 파일명 (파일을 커밋 대기 상태에 등록) ->git commit ( 커밋 = 버전등록 = 저장소에 등록) 순서입니다 최종목표는 깃허브에 파일을 올리고, 백업과 버전관리 및 협업을 하는 것입니다 나중에 깃허브를 다룰 때 이 과정에 나의 깃허브 주소를 remote하는 단계와 git push 명령어를 사용하여 파일을 등록하는 단계를 추가하면 최종적으로 나의 깃허브 저장소( 원격 저장소)에 파일을 올릴 수 있습니다 실습환경을 위해 Git을 다운로드 https://git-scm.com/downloads Git - Downloads Download..

파워지훈
'분류 전체보기' 카테고리의 글 목록 (9 Page)