.vcxproj : 프로젝트, 실행파일이나 dll등과 같은 파일을 만듦

.sln : 솔루션, 프로젝트를 관리


1개의 솔루션에 여러 개의 프로젝트가 들어갈 수 있다.


참고

http://egloos.zum.com/chez/v/1215189

http://luyin.tistory.com/193

root folder : 각 사물의 명칭

deco : 머리 위의 악세사리

head : 동물 귀/천사링 같은 종류

nose : 코

mouse : 입 주변의 악세사리 종류(이빨, 입에서 뱉는 종류)

jaw : 턱 아래의 물체


- 수정 가능성 있음

Debloater-setup-v3.90.exe



루팅하지 않아도 앱을 블락해주는 프로그램

기본 어플들 중에서 보기 싫은 어플을 블락할 수 있다.

벽돌 안된거 보니 블락해도 괜찮은 어플만 블락한 듯


뮤직벨링은 아직 블락 못했다..찾을 수가 없어;

https://colorscripter.com/


소스코드 알록달록하게 채색해서 보여주는 사이트

색 종류 3가지/언어 선택


내가 사용하는 언어들은 다 있다

설치하지 않아도 쓸 수 있는 사이트라 편함


클립보드로 복사한 다음 붙여넣기 하면 됨

SDK v7.1 설치시 오류 해결 방법


C:\Program Files\Microsoft SDKs\Windows\v7.1\Setup\SFX\vcredist_x64.exe installation failed with return code 5100 일 때


Microsoft Visual C++ 2010 재배포 가능 패키지의 최신 버전이 컴퓨터에 설치 되어 있기 때문에 발생

Windows 7.1 SDK에 포함 되어 있는 Microsoft Visual C++ 2010 재배포 가능 패키지를 최신의 Visual C++ 2010 재배포 가능 패키지 위에 설치할 수 없다

기존의 재배포 가능 패키지들(x86, x64)을 삭제한 뒤 SDK v7.1을 설치하고 그 후에 재배포 가능 패키지를 다시 설치


https://support.microsoft.com/ko-kr/kb/2934068


--------------------------------------------------------------------------------------------------------------------------------------------------------------------


설치한 후 VS2010(professional, express) SP1 업데이트 시 컴파일러가 삭제되는 경우가 있는데 컴파일러를 재설치해주면 된다

Ultimate나 Premium은 관계 X


https://support.microsoft.com/ko-kr/kb/2519277

1. 예증법 : 특정한 사례들을 나열한 뒤 그 안에서 일반적인 규칙을 찾는다.

2. 패턴 매칭 : 풀어야 할 알고리즘과 비슷한 문제를 생각해내고 비슷한 문제의 풀이법을 수정하여 풀어야 할 알고리즘을 만들어낸다.

3. 단순화와 일반화 : 문제를 단순화하여 푼 뒤, 알고리즘이 구해지면 일반화

4. 초기 사례로부터의 확장 : n=1, n=2, n=3,... 식으로 확장하여 규칙을 찾아낸다. 보통 재귀 알고리즘으로 구현된다.

5. 자료구조 브레인스토밍 : 자료구조들을 차례차례 적용해보고 해결되는지 본다. 

기술 문제를 푸는 다섯 단계


1. 문제의 모호한 점에 대하여 면접관에게 질문을 한다.

-명확하지 않은 부분에 대해 질문

-좋은 질문 : 자료형은 무엇인가?/데이터의 양은?/어떤 가정을 해야하는가?/사용자는 누구인가?


2. 알고리즘을 설계한다.

-시간과 공간복잡도는?

-데이터가 많아지면 어떻게 되는가?

-내 설계로 인해 다른 문제가 발생하지 않는가?(변형 이진 탐색 트리를 만들었을 경우 나의 설계가 기존의 삽입, 탐색, 삭제 시간에 영향을 미치지는 않는가?)

-다른 이슈나 한계점이 있다면 적절한 타협안을 만들었는가? 타협안이 최적으로 동작하지 않는 시나리오는?

-데이터의 특징이 명시되어 있다면 그 특징을 활용하였는가?

-처음부터 완벽할 수 없으니 시작 코드를 최적화시켜 나가면 됨


3. 가상코드(수도코드)를 먼저 작성한다.

-면접관에게 후에 코드로 변환할 것이라 알리는 것이 좋음


4. 코드를 작성한다.

-자료구조를 충분히 활용 : 기존의 자료구조를 활용하거나 스스로 정의하여 사용

-코드가 복잡하게 보이지 않도록 : 정중앙부터 써내려가지 말고 왼쪽 위부터


5. 코드를 테스트하고, 오류를 교정한다.

-테스트 경우

      • 극단적인 경우 : 0, null, 음수, 최댓값, 최솟값
      • 사용자 실수 : 올바른 값의 입력이 아닌 이상한 값(null, 음수, ...)
      • 일반적인 경우

-알고리즘이 복잡하거나 복잡한 연산이 포함되어 있다면 코딩 도중에 테스트해볼 것

-실수 발견시 왜 그 버그가 발생하게 됐는지 이유를 찾을 것(깊이 생각하고 수정해야 함)

Big Endian

논리연산을 주로 하는 컴퓨터에서 사용

대수비교와 같은 논리연산을 주로 하는 컴퓨터에서는 맨 앞자리부터 큰 수인지 비교하는 것이 편하므로 차례대로 값을 저장한다.


Little Endian

계산을 주로 하는 컴퓨터에서 사용

덧셈과 같은 계산을 주로 하는 컴퓨터에서는 1의자리부터 계산하여 올림하는 것이 일반적이므로 1바이트씩 뒤집어서 값을 저장한다.


가정용 PC는 논리연산보다 계산을 위주로 하는 PC가 많기 때문에 Little Endian으로 저장되는 경우가 많다.

프로그래밍에서 포인터 가지고 장난칠 시에 끝에서부터 데이터가 변경된다고 당황하지 말자.


http://air802.tistory.com/123

코드 영역

실행할 프로그램의 코드를 올려 놓을 공간


데이터 영역
프로그램이 종료될 때까지 유지해야 할 데이터를 저장할 공간 
ex) 전역변수, static 변수

스택 영역
아주 잠깐 사용하고 삭제할 데이터의 저장 공간
ex) 지역변수

힙 영역
프로그래머가 원하는 형태대로 쓸 수 있는 공간
ex) 동적할당(malloc, new)



1
2
3
4
5
6
7
#include <iostream>
using namespace std;
 
int main(){
    system("PAUSE");
    return 0;
}
cs


방지하기 위해서 return 0; 전에 system("PAUSE"); 넣어주면 된다.

아무 말 없이 출력하고 싶으면 system("PAUSE > NUL"); 넣어주면 된다.


자꾸 종료되서 짜증났는데 이걸로 해결


+ Recent posts