Programming 썸네일형 리스트형 C Study 02 - 연산자 연산자 우선순위우선순위, 낮을 수록 먼저 수행 부호 우선 방향 1 () [] -> . → 2 ! ~ ++ -- + -(부호) *(포인터) & sizeof ← 3 *(곱셈) / % → 4 + - (덧셈 뺄셈) → 5 > → 6 = → 7 == != → 8 & → 9 ^ → 10 | → 11 && → 12 || → 13 ? : ← 14 = 복합 대입 ← 15 , → Ex ) void main(){int num1 = 1;int num2 = 2;int result;1.result = (num1 && num2) || (num1 + num2); // O2.result = num1 || num2 == (num2 - num1); // 03.result == num1 || num2 = (num2 - num1); /.. C Study 01 - 기초 2 C언어에서 사용되는 용어 * : 에스터리스크& : 앰퍼샌더 초기화, 선언, 정의 는 각각의 의미가 있으니 헷갈리지 말 것.{} 와 같은 것을 scope 라 칭한다. main 함수 () 안에 있는 것을 argument라고 하며, printf함수 에서 ()안에 있는 것을 parameter라 하는데 통상 두 가지 모두를 parameter 전달인자 값이라 한다. main 함수 앞에 있는 것을 '반환 타입'이라 하며 그 타입에 따라 return 해주는 변수나 값 타입이 변화한다.현재는 int 형 타입이기 때문에 1을 반환 하였다. 데이터 타입의 크기 일반적으로 데이터 타입의 크기를 말할 때 windows 32bit 환경에서의 크기를 말한다.int : 4bytelong : 4bytedouble : 8bytelong.. C Study 01 - 기초 1 C에 기초를 탄탄하게 다지기 위하여 블로그를 통해 설명을 이어나갈 생각이다.그러면 처음 기초부터 살펴보자. 프로그램이란 ?간단히 설명해서 input -> program -> output특정 input을 특수한 연산을하여 output을 뽑아내는 것이다. 이러한 프로그램은 여러가지로 만들어 낼 수 있는데, 대표적으로 우리가 흔히 쓰는 C프로그램 언어이다. 그렇다면 C란??1972년 벨 연구소의 데니스 리치(Dennis Ritchie)에 의해 만들어졌다. 데니스 리치는 UNIX 운영체제의 개발을 맡고 있었는데 운영체제는 그 특성상 하드웨어를 직접 제어할 수 있어야 했다. 또한 당시의 컴퓨터 환경이 지금과는 달라 CPU의 속도나 메모리의 용량이 충분하지 않았기 때문에 프로그램의 크기는 작아야 했고 속도는 빨라야.. Object File에 관한 링크 사이트 http://recipes.egloos.com/5010841 JVM 메모리 구조 * 클래스 로더 -JAM이 수행할 클래스를 찾아서 클래스의 바이너리 데이터를 메모리에 적재 -.class 파일을 JVM에 로딩하는 것, 즉 파일에서 메모리로 로드하는 것 -이때 클래스를 검증하고 클래스 변수를 위한 메모리를 초기화해서 기본값으로 할당한다 클래스의 참조를 직접참조로 변환한다. * 런타임 데이터 영역 - 클래스 로더에서 준비해서 여기서 이제 수행하면서 쓸 데이터를 보관한다. 1. 메소드 영역 클래스의 정보(클래스 형정보)를 저장하고 프로그램이 수행되는 동안 클래스의 정보(클래스 형정보) 참조하는곳 저장되는 것은 로딩된 클래스의 정보, 멤버변수정보, 메서드 정보 ,static 변수(클래스변수),상수 Import된 클래스들이 로드된 곳 이 영역은 JVM에서 실행되고 있는 모든 쓰레드(프로그램)에.. Compile 과정 gcc 컴파일 과정 Memory 구조 Windows 32bit OS환경 ◆ Stack(스택) : 컴파일러가 임시로 사용하는 곳으로, C언어에서 함수 호출시 지역 변수(malloc을 사용하지 않고 직접 정의된 경우)와 인수, 반환 주소(return address) 등을 Push(저장)한다. 함수가 끝나면 이 값들을 Pop하고 Return 하게 되는 것이다. ◆ Heap(힙) : 프로그램 수행 중에 malloc(), free() 등의 시스템 콜로 할당되고 해제되는 메모리 영역으로, 프로그래머가 직접 사용할 수 있는 곳이다. ◆ Data (Data segment): C언어에서 전역 변수, 정적 변수(static으로 지정된 변수) 등으로 선언된 변수 영역이다. -> bss(uninitialized data segment) : global, stat.. Good Bye BuddyBuddy~ 버디버디 서비스 종료... 2000년대에 내가 한창 초등학교를 다녔을 때, 네이트온이 없었을 때... 한창 하던 메신저가 최종적으로 서비스 종료되었다. 물론 2002년 이후로 개인적으로는 이용하지 않았지만, 한때 문화충격으로 다가온 버디버디는 사람들에 의해 많이 사용되었다. 하지만 사업의 유지만을 고집하던 버디버디는 시대를 따라서 발전하지 못했고. 다른 채팅 프로그램과의 전쟁을 이기지 못하고 2012년 5월 최종적으로 서비스를 종료하게 되었다. 하나의 채팅 문화로써 발돋움 했던 버디버디. 이제 우리의 하나의 추억속으로 남게 되었다. 이전 1 2 3 다음