본문 바로가기

반응형

System Programmings/C++

(18)
프로그램 속도 측정 프로그램의 속도 측정을 위한 간단한 로직이다. 클래스를 활용하여 함수 시작 부분에 코드 삽입 후 함수가 끝나는 경우 소멸자에 의해 시간을 표시한다.부정확한 시간을 표기하지만 간단하여 쉽게 사용 할 수 있다. #include #include using namespace std; class loadTime { public: loadTime(); ~loadTime(); private: clock_t before; double result; }; loadTime::loadTime() { before = clock(); } loadTime::~loadTime() { cout
동적 할당 방법 메모리 릭을 방지하기 위해 할당된 메모리는 할당된 함수 범위 내에서 해제하는 것을 원칙으로 삼는 것이 좋다. 1. malloc Byte 만큼 메모리를 할당한다 초기값 : 쓰레기값 주의 : 할당 뒤 바로 memset등으로 0값 초기화시에는 calloc 사용이 바람직char *memory = (char*)malloc(sizeof(char) * 10); free(memory); 2. calloc Byte 만큼 메모리를 할당한다 초기값 : 0 주의 : 0값 초기화가 필요 없거나 다른 값으로 초기화시에는 malloc 사용이 바람직 char *memory = (char*)calloc(sizeof(char), 10); free(memory); 3. new Type 만큼 메모리를 할당한다 초기값 : 쓰레기값 주의 : ..
[C++] 클래스 객체간의 연산을 도와주는 operator C++에서 일반적으로 만들 수 있는 기본 타입의 변수들은 사칙 연산 및 비교 연산 등을 직관적으로 할 수 있다. 아래의 코드를 보다시피, 바로 더하기, 빼기, 크거나, 작거나 등의 비교가 쉽다. int a = 10; int b = 20; int sum = a + b; int minus = a - b; if(a > b) cout Ramen > obj.PotatoChip + obj.Pringles + obj.Pringles) return true; return false; } bool Market::operatorPotatoChip + this->Pringles + this->Ramen < obj.PotatoChip + obj.Pringles + obj.Pringles) return true; return ..
[C++] MS에서 사용하는 헝가리안 표기법 Hungarian Notation Win32 follows a notation convention called Hungarian Notation. In Hungarian Notation the first character or first several characters of a variable or parameter name identifies that variable or parameters type. Here are some of the most common Hungarian Notation prefixes: b or f—used as a prefix for booleans (f stands for flag). c—used as a prefix to chars.1 n—used as a prefix ..
[C++] 가상 함수 virtual 키워드 삭제시, 유지시의 출력값 차이 확인 #include using namespace std; class Parent { public: virtual void func() { cout
[C++] 이미지 바이너리 읽기 이미지의 구조를 한번 파악해 볼까 하고, jpg 파일을 열어보려고 프로그램을 만들었는데, text 파일을 Open시키는 것처럼 해서는 이미지 파일을 끝까지 열 수 없는 현상이 생겼다. C/C++ 언어는 최근에 시작했기 때문에 모르는 것 투성이라서 찾아봤더니 바이너리(?) 형식으로 열어야 되더라. 아래 코드가 jpg 파일을 바이너리 형태로 여는 코드다. #include using namespace std; int main() { FILE *fp = fopen("C:\\file1.jpg","rb"); fseek(fp,0,SEEK_END); //go to end int len = ftell(fp); //get position at end (length) fseek(fp,0,SEEK_SET); //go to b..
[C++] 퀵 정렬 (Quick Sort) C++ 이용한 다른 소스 #include using namespace std; void quicksort(int low, int high, int s[]); void partition(int low, int high, int& pivotpoint, int s[]); int main() { int s[50]={0}; int low, high; int i, n; cout n; while(n50){ // 적당한 값이 나올때 까지 반복 cout s[i]; low=0; high=n-1; for(i=0; i
[C++] 로또 뽑기 (난수 발생 & setw()함수 사용법) #include #include // seed값을 시간으로 주기 위해 포함 #include // setw() 함수를 쓰기 위해 포함 using namespace std; int main() { // 시간을 seed로 가진 난수 발생 (한번만 선언한다) srand((unsigned)time(NULL)); int cnt; cout > cnt; cout

반응형