티스토리 뷰
[프로그래밍 테크닉] C언어 소스 최적화 테크닉
1. 반복문 안에서 변수 선언 및 초기화하지 않기 |
for(int i = 0 ; i < 10000 ; i++)
{
int value = 0 ;
cout << value ;
}
(2) 최적화된 방법
int value ;
value = 10 ;
for(int i = 0 ; i < 10000 ; i++)
{
cout << value ;
}
2. 루프 안에서 조건 만족시 break 등으로 반복 줄이기 |
(1) 최적화되지 않은 방법
for(int i = 0 ; i < 100 ; i++)
{
if(value[i] == 100)
cout << value[i] ;
}
원하는 결과물에 따라서 다를 수 있지만 하나의 결과값만을 찾는 경우 위 소스와 같이 한다면
쓸데없이 나머지 루프를 반복하게 된다.
(2) 최적화된 방법
for(int i = 0 ; i < 100 ; i++)
{
if(value[i] == 100){
cout << value[i] ;
break;
}
}
3. 멤버변수와 관련한 최적화 |
(1) 최적화되지 않은 방법
void Test::Init()
{
for(int i = 0 ; i < m_nSize ; i++)
{
// 초기화
}
}
(2) 최적화된 방법
void Test::Init()
{
int size = m_nSize ;
for(int i = 0 ; i < size ; i++)
{
// 초기화
}
}
멤버변수의 경우 클래스의 this 포인터를 이용해 변수에 접근하기 때문에 for문 안에서 수시로
조건을 체크할 때 최적화된 방법보다 오버헤드가 걸리게 됩니다.
4. 조건문 안에서의 조건 설정 |
(1) 최적화되지 않은 방법
int number = 10 ;
if(getSize() > 10 && number <= 10)
{
.
.
.
}
(2) 최적화된 방법
int number = 10 ;
if(number <= 10 && getSize() > 10 )
{
.
.
.
}
조건문안에서 조건의 참, 거짓 여부를 확실하게 구분 할 수 있는 식을 앞에 위치시킵니다.
'IT 이야기 > 프로그래밍' 카테고리의 다른 글
[HTML] input box 한글/영문 기본값 설정 (0) | 2010.07.29 |
---|---|
[JAVA] StringBuffer 객체의 초기화 (0) | 2010.07.29 |
[JAVA] getTextContent() JDK 1.4에서 사용하기 (2) | 2010.07.29 |
[PHP] 현재 디렉토리 경로를 출력하는 소스 (0) | 2010.07.29 |
[HTML] innerHTML을 이용한 간단한 예제 소스 (0) | 2010.07.29 |
[프로그래밍 문제] 동전 뒤집기 문제 (0) | 2010.07.29 |
[프로그래밍 테크닉] 기본적인 Data Toggling 방법 (0) | 2010.07.29 |
[프로그래밍 문제] 마이크로소프트 입사 시험에 나왔던 문제 (9) | 2010.07.29 |
[C언어] fopen(), fprintf()함수를 이용한 파일 입출력 (0) | 2010.07.29 |
sigaction() 함수 사용 예제 프로그램 (0) | 2010.06.08 |
- Total
- Today
- Yesterday
- W3Schools Online Web Tutorials
- 구차니의 잡동사니 모음
- [IT]블로거팁닷컴
- 비앤아이님의 블로그
- Blog Suspect
- 즐거운하루 blog
- zinicap의 검색엔진 마케팅(SEM)
- 머니야머니야님의 블로그
- [Friend] AtinStory
- [기타배우기]해브원 박스
- [웹표준] SINDB.com
- 해커 C 이야기
- [애드센스] 길라잡이
- 정순봉의 IT SCHOOL
- 씨디맨의 컴퓨터이야기
- 2proo Life Story
- 못된준코의 세상리뷰
- [IT강좌] 정보문화사
- IN 대전
- 에우르트는 나쁜남자 -_-
- 씬의 싱크탱크
- 엔돌슨의 IT이야기
- 진이늘이
- 'Cooltime'의 블로그
- 후이의 Tistory
- Soulstorage
- 앤드&엔드의 블로그
- June Blog
- 노지의 소박한 이야기
- gbWorld
- 인터넷 속 나의 생각
- HarshNix
- ART of WEB
- 녹두장군 - 상상을 현실로
- 효과음
- MBTI 테스트
- 안드로이드 어플
- 안드로이드
- 소스코드
- 인터넷
- MBTI 자료
- MBTI 검사
- It
- 강의
- 예제 소스
- C언어 문제
- C언어 소스
- 안드로이드 어플 추천
- 스마트폰
- php
- 프로그래밍
- C
- 강좌
- 인터넷 익스플로러
- 소스
- C언어
- 모토로이
- 성공
- JavaScript
- MBTI
- 리뷰
- HTML
- MBTI 강좌
- 프로그래밍 문제
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |