728x90
반응형
using namespace Cat;
이 밑으로는 모든 고양이로 선언 되어 버린다.
using namespace::Create All; : 모든 고양이 생성한다.
// Example.h // a.cpp에서 정의된 g를 사용하기 위한 준비 extern int g; int main() { g = 200; // 실패 return 0; } |
이건 C에서 사용하는 방법이고
namespace { int g; } void Func() { g = 200; // 성공 } |
이건 C에서 extern을 사용하는 것과 같이 C++에서 사용하는 방법이다
붉은 색 사각형은 trmplate 함수이다
UML(Unified Modeling Language)
표준화한 모델링 언어
모델을 기반으로 소프트웨어를 개발하고자 할 때 유용하다.
요구분석, 시스템 설계, 시스템 구현 등의 시스템 개발 과정에서 고객과 개발자 또는 개발자들 상호간의 의사소통을 원할하게 하기 위해서 표준화한 모델링 언어이다.
방법론이 아닌 소프트웨어 개발에 사용되는 다이어그램을 정의하는 것으로 비주얼 하게 표현한다
#include<iostream.h> #include<iomanip.h> int main() { cout.width(10); // 출력된 공간의 크기를 지정 cout << 333 << "," << 334 << endl; cout.setf(ios::fixed); // 일단 이러게 하면 실행은 됩니다 // cout.setf(ios_base::fixed); // 이건 ios_base를 찾을 수 없다고 에러 cout.precision(2); cout << 3.33333 << endl; cout.fill('*'); // 빈 칸을 채우는 함수 cout.width(10); cout << 333 << endl; } |
결과
333,334 3.33 *******333 |
#include <stdio.h> #define MAX 10 // 구조체 선언 typedef struct _Node { char Data[96]; struct _Node *next; }Node; void MM_init(); void *MM_malloc(unsigned int k); Node DATA[MAX]; Node *Empty; unsigned int NUM; int main() { char *H; MM_init(); // MM_init 함수 호출 H = (char*)MM_malloc(96); // MM_malloc 함수 호출 sprintf(H,"0x08X 안녕하세요\n",100); // 동적할당을 받은 곳에 0x08안녕하세여 printf(H); // sprintf로 적은 걸은 화면에 표시한다 return 0; } void MM_init() { int icnt; for(icnt=0;icnt<MAX; icnt++) { DATA[icnt].next = &DATA[icnt+1]; // 연결리스트 연걸하기 위해서 } DATA[icnt].next = 0; // 마지막에 NULL을 집어 넣는다 Empty = DATA; // Empty가 DATA를 가르킨다 NUM = MAX; // NUM에 define되어있는 값 10을 집어 넣는다 return; } void *MM_malloc(unsigned int k) { unsigned int uicnt; Node *temp; k = (k/97)+1; if(k>NUM) { return 0; // K가 NUM보다 크면 NULL을 리턴한다 } temp = Empty; // temp도 DATA를 가르킨다 왜나면 Empty가 DATA를 가르키고 있디 for(uicnt=0;uicnt<k;uicnt++) { Empty = Empty->next; // Empty를 연결리스트 끝까지 이동시키기 위해서 } NUM = NUM-k; // 블럭 수 return temp; // temp 리턴 } |
하지만 이 연결 리스트에 문제점이 있다 96Byte를 요구하나 1Byte를 요구하나 한 블럭 식 무조건 주고, 1Byte로 줄이면 자료는 1Byte되 그걸 유지 하는 포인터는 4Byte이다 이러게 하면 유지하는데 너 많은 메모리를 쓰게 된다 쉽게 말해서 오버헤드가 일어 나는 것이다
결과
0x08X 안녕하세요 |
저도 이해가 잘 안가서 그래서 적었습니다 부족한게 많을꺼예여 그건 양해 부탁 드림
728x90
'코스웨어 > 11년 내장형하드웨어' 카테고리의 다른 글
[내장형]김정우-11월30일 (2) | 2011.11.30 |
---|---|
BrickOS Memory Management Report (0) | 2011.11.30 |
[내장형]황세선_2011.11.29 일일보고서 (4) | 2011.11.30 |
brickos-0.9.0 폴더 (0) | 2011.11.29 |
[내장형]심재원_2011.11.24일일보고서 (2) | 2011.11.25 |
[내장형]김동화 - 11월22일 일일보고서 (10) | 2011.11.22 |
[내장형]윤수영 - 11월21일 일일보고서 (7) | 2011.11.21 |
[내장형]최남식-2011년 11월18일 일일보고서 (8) | 2011.11.18 |