회원가입 ID/PW 찾기

1) 지식 창고는 본인이 작성한 콘텐츠(팁/노하우/리소스/강좌 등)을 무료 혹은 가상화폐인 납포인트를 통해 공유하는 공간입니다.
2) 본인이 작성한 콘텐츠에 대해서만 지식 창고에 등록할 수 있으며, 저작권에 위배되는 콘텐츠는 사전경고 없이 삭제될 수 있습니다.
3) 콘텐츠 구매 및 첨부파일 다운로드는 회원그룹 '연구원' 이상 가능하오니, 경험치를 쌓아 진급한 후에 이용 부탁드립니다.
4) 무료 콘텐츠의 본문은 구매절차 없이 즉시 이용할 수 있으며, 판매 납포인트가 있는 콘텐츠는 구매 후 이용할 수 있습니다.
5) 콘텐츠 판매에 따른 납포인트 수익은 지정한 비율(50%)에 따라 판매자에게 지급하며, 납포인트 수익을 통해 진급을 빨리할 수 있습니다.
6) 구매 후 평가를 하면 구매 납포인트의 20%를 돌려 드립니다.

콘텐츠 수 200

캠퍼스 C 강좌 _2

펌웨어 & 코딩언어 구매수 0 2007.11.04 01:08:29
판매자 프리미엄 판매 납포인트 무료 평점 0점 / 총 0명 참여

===========================< 캠퍼스 C  강좌 >==============================
[제목] :
[코드] : campusc1-002 (초급)
[교재] : CAMPUS C (초급, Third edition)  [출판사 : 책과스승]
[알림] :이 파일은 "캠퍼스 C"에서 모든 분께 공개한 "초급 강좌"입니다.
        이 [알림]의  내용을 지우지 않는다면  누구에게나 임의로 복사해 줄  수
        있습니다.그러나 이 강좌 내용에 대한 저작권은 "캠퍼스 C"에 있습니다.

[연락처] : 605-8662 (서울) ("캠퍼스 C", 도서출판 "책과 스승")
           천리안 : go campusc  
           나우콤 : go lcampc
           하이텔 ID : campusc
****************************<< 목 차 >>************************************
[1부] 문법편
------------
<1> C 를 배우기 위한 기본서적
         1. compiler  사용법
         2. 문법 책
         3. 라이브러리 레퍼런스(library reference)

<2> C 프로그램은 이렇게 생겼어요 ( 5 부분)
         1. 함수 아닌 부분
                1) #include 부분 (생략 가능)
                2) #define  부분 (생략 가능)
                3) 함수명 선언부분 (생략 가능)
                4) 변수 선언 부분 (생략 가능)
         2. 함수 부분
                5_1) main() 함수
                5_2) sub_routine() 함수 (생략 가능)

<3> 함수에 관하여
        1> 형태 (들여짜기(indent) 및 모양빚기)
        2> 기능(하는 일)
        3> 프로그램이 왜 점점 복잡해지나 ?
        4> 프로그램 내에서 함수 이름의 구분
        5>함수를 부르는 방법 3 가지
                1) " 쏴라"
                2) " 미사일을 쏴라"
                3) " 미사일을 쏴라 그리고 보고하라"
******************************< 내용 시작 >********************************
<1> C 를 배우기 위한 기본서적
         1) compiler  사용법
         2) 문법 책
         3) 라이브러리 레퍼런스(library reference)
***************************************************************************
        지난 시간 컴퓨터는 뜯어 보셨나요 ? 숙제를  확인 할 길은 없지만, 중요
한 사실은, 머리속에  우리의 프로그램이 뛰 놀 놀이터를 확실하게  이해 하고 있
어야 한다는 겁니다.
        지난 예비 강좌에도 실었지만 정리하는 의미에서 다시 합니다. 지난번에
컴파일러 팩키지(package)의 구성을 살펴 보았는데  컴파일러의 기능은, "C 언어" 
를 "기계어" 로 바꿔 주는 것입니다. 지극히  간단 하지요. 그러나 실제 컴파일러
의 디스켓에 들어 있는 내용을 보면 그렇게  간단한것은 아닙니다. 일반 유저들은
자세한 설명서가 없으면 쓰기가 어려울 정도입니다.
        그래서 컴파일러를 만들어  파는 회사에서는 꼭 사용  설명서 (매뉴얼)을
만들어 주는데 그게 위에  적어 놓은 3권 입니다. 이 중에  다음의 두권은 우리의
교재에 같이 실려 있어서 서점에서 비싸게 따로 살 필요가 없습니다.
        교재에 실린 책 : 1. 문법 책 
                         2. 라이브러리 레퍼런스
        그리고 1) compiler  사용법 은 각  컴파일러마다 사용법이 다르고, 컴파
일러를 살 때  따라 오는 것입니다. 따라서 서점에서 따로  사야될 필요는 없습니
다. 이것도 역시 잘  알아야 하지만, 지금 우리가 쓰는 터보 씨나 볼랜드  C++ 같
은 것은 메뉴  체계가 잘 되있어 비교적  이해 하기가 쉬울 뿐더러 현  단계 에서
그렇게 심각하게 파고  들 필요는 없습니다. 그러나 점점  프로그래밍에 익숙해질
수록 [30쪽]에  언급되어있는 "컴파일러의 사용법", "링커의  사용법", "라이브러
리 관리기의 사용법" 정도는 자세히 알아야합니다.
**************************************************************************
<2> C 프로그램은 이렇게 생겼어요 ( 5 부분)
         1> 함수 아닌 부분
                1) #include 부분 (생략 가능)
                2) #define  부분 (생략 가능)
                3) 함수명 선언부분 (생략 가능)
                4) 변수 선언 부분 (생략 가능)
         2> 함수 부분
                5) main() 함수
                5) 기타 sub_routine() 함수 (생략 가능)
***************************************************************************
        C 프로그램의 전반적인 모습을 이해 하기  위해서는 교재의 [52-54쪽] 의
구성만 알고 있으면  됩니다. 이 부분은 거의 바둑의 정석처럼  쓰이는 것이기 때
문에 여러분이 프로그램을  직접 작성하실 때 이것을 "샘플"로 삼아서  내용 수정
만 하시면 됩니다.
        이걸 다시 크게  분류해 보면, "함수부분인가" "아닌가"로 나눌  수 있습
니다. 함수는 밑에서  얘기 하겠지만, C 프로그램의 구성 요소중  가장 중요한 부
분이고, 사실상 함수가 아닌 부분은 전부 생략할  수 있기 때문에 프로그램은 "함
수로만  구성"되 있다고  해도 틀린말은  아닙니다. 게다가  함수 부분  중에서도
main() 함수 부분만 빼고  나머지 함수는 전부 생략 가능 하기  때문에, C는 사실
상 main() 함수 하나만 있어도 완전한 프로그램이 되는 것입니다.
        이와같이 C 프로그램은 생략가능한 부분이  많기 때문에 여러가지 형태로
보일 수  있습니다. 그러나 결국  완전한 부분은 지금보고 있는  [52-54쪽]이라는
것을 기억하시기 바랍니다.
**************************************************************************
<3> 함수에 관하여
        1> 형태 (들여짜기(indent) 및 모양빚기)
        2> 기능(하는 일)
        3> 프로그램이 왜 점점 복잡해지나 ?
        4> 프로그램 내에서 함수 이름의 구분
        5>함수를 부르는 방법 3 가지
                1). " 쏴라"
                2). " 미사일을 쏴라"
                3). " 미사일을 쏴라 그리고 보고하라"
**************************************************************************
<3> 함수에 관하여
        "함수"의 완전한 형태는 [268쪽]의 상자안에 자세히  나와 있습니다.  그
림에서 보다시피 사람처럼 "머리"와 "몸통"을  가졌지요. 함수머리에서 "xxx"라는
이름은 "임의의 이름"을 여러분 자신이 써넣을 수  있다는 것을 의미하고, 이것이
"함수 이름" 입니다.
        이 함수를 우리는  "xxx함수" 라고 부릅니다. 그러면  "main함수"는 아래
처럼 생겼겠지요.
                        main()
                        {
                

                        }
일반적으로 함수 형태의 특징은 이렇습니다.

        1) 반드시 xxx 에 연달아 소괄호 가 열리고 닫힙니다.
        2) 소괄호 사이에는 매개변수들이 있어도 되고 없어도 됩니다
        3) 중괄호가 열리고 닫힙니다

사실 위에서 줄은 아무렇게나 해도 상관이 없습니다.  아래는 컴파일러에게 다 똑
같이 여겨 집니다.
<경우 1 >  xxx() {           }

<경우 2 >  xxx() {          
      

           }

<경우 3 >  xxx()
           {          
      

           }

즉 컴파일러에게는 자기에게 필요한 머리  인 "xxx()" 와 몸통인 " {    } "만 있
으면 됩니다. 그러나 그렇다고 우리도 아무렇게나  쓰면 "절대"로 안됩니다. 여기
서는 반드시 다음과 같이 쓰도록 합니다.

<경우 3 >  xxx()
           {          
      

           }
        만일 이 습관을  제대로 들이지 않으면 자기가 짠 프로그램도  자기가 이
해를 하지 못하는 우스운 일이 벌어집니다. 여기서 용어 두가지 만 이해 합시다.

<용어 1> 들여 짜기(indent)
        이 뜻은  아실 겁니다.우리가 문서 만들  때 [탭]키를 쳐서  글자를 들여
짜는 걸 말합니다.  이유는 분명 합니다. "보기  좋고 한눈에 이해 하기  쉽게 하
자"는 겁니다. 나중에 또 나오지만 C 에서는  관습적인 규칙이 있습니다. 즉 함수
몸통의 시작 부분 "{" 가 열리고 나면 그 다음 줄은 꼭 들여 짜기를 합니다
(암기 필요)

<용어 2> Nest(중첩)
        이걸 우리말로 "중첩"이라고 하면 적절할 지  모르겠는데 아주 중요한 개
념 입니다. 보통 낱말의 뜻은 "보금자리, (새의)  둥지" 같은 뜻 이지만 여기서는
그런 뜻이 아니고 줄줄이 중첩 되는 개념 입니다.  말이 이상한데 예를 들면 이런
겁니다.
        설마 등산갈 때 쓰는 밥그릇(코펠)을 모르는 분은  안 계시겠지요 ? 이런
형태가 그릇이 중첩(nesting)  된 것입니다. 또 야외용 물컵에도  그런게 있지요.
컵안에 또 작은 컵이 있고 그안에 또 있고 ... 하는 식으로 말 입니다.
        개념은 이해가 되었을 것이고 C 의 중괄호 "  { } "들이 nesting 되는 모
습을 보십시오( 중괄호만 보세요)

main()
{
        if(a > 10) {    <-- 중괄호 열리고 다음 줄 "탭"
                a++;
                b++
                for(a=0; a < 10; a++) {    <-- 중괄호 열리고 다음 줄 "탭"
                        printf(" 이건 보지 마세요");
                }       <-- 중괄호 닫히고 다음 줄 정상적으로 복귀
        }       <-- 중괄호 닫히고 다음 줄 정상적으로 복귀
}

들여 짜기를 하면 이런 중첩(nesting) 되는 구조가 되는 것입니다.

---------------------------------------------------------------------------
2> 함수의 기능 (하는 일)
---------------------------------------------------------------------------
        이것은 수학에서의  "함수(function)"와 똑같은 개념입니다.  어떤 "일을
할수 있는 최소 단위" 입니다. C 프로그램에서  어떤 일을 하고싶으면 반드시 "함
수의 형태"를 가지고 "그안"에서 해야합니다. 예를 들어 "a  와 b 를 더해서 c 에
넣고 싶다" 는 일을 하고 싶으면 아래의  왼쪽같이 몸통 안에서 일을 해야됩니다.
오른쪽 처럼 몸통 밖으로 실행문이 나와서는 안된다는 겁니다.

main()                         main()
{                              {
    c = a + b;                 }
}                              c = a + b;

        구체적으로 "함수의 기능"은  "군인 한명"에 비유 될 수  있습니다. 그리
고 프로그램은 전쟁에 비유됩니다. 군인은  전쟁에서 싸워이기기 위해 조직적으로
역할을 분담하고 있습니다.  즉 군인 한사람 마다,  예를들어 소총수,운전병,취사
병,특공대원, 총사령관  등 각자 할일이  명백하지요.만일 누구라도 자기  역할을
다하지 못하면 전쟁에 집니다.
        프로그램도 마찬가지  입니다.각자 함수의 일을  정확히 하지 못하면  이
프로그램은 돌지 않습니다. 함수 중에서도 main() 함수  가 총사령관 에 해당하고
모든 명령은 여기서 부터 시작합니다.
--------------------------------------------------------------------------
<중요> C 에서 main() 함수 하나는 반드시 있어야 한다.

        C 에서는  유독 "main"이란  함수명을 특별하게 취급하여"main()  함수는
딱 하나만 존재해야 하며 프로그램은 여기서 부터  시작한다" 라고 규정하고 있습
니다. 따라서 C 프로그램을 읽으려면 다음과 같이 합니다.
        (1) 아무리 크고 복잡한 프로그램을 보더라도 일단은 main() 을찾는다.
        (2) 그리고  다른 모든 것을  무시하고 거기부터 한줄 한줄  읽어나간다.  
         main() 함수의 몸통 끝에 다다르면 다 읽은것이다.

---------------------------------------------------------------------------
<3> 프로그램이 왜 점점 복잡해지나 ?
      main() 함수와 기타 함수들의 관계 (총사령관 과 기타 병사들)
---------------------------------------------------------------------------
        C 의 프로그램은  실제로 많은 함수들을 서로 부르고  불리면서 복잡하게
구성되 있습니다. 그러나  그것도 일정한 규칙이 있어서 보기처럼  그렇게 복잡한
것은 아닙니다. 다음의 예를 보시고 어떻게 프로그램이  확장 되나가는지 한번 이
해해 보세요.

<예>    조그만 싸움을 할땐 총사령관 한 사람만  나가서 싸웁니다. 즉 위에서 예
를 든것 처럼  main() 함수 하나만 있으면 충분합니다. 그러나  소말리아 전투 처
럼 조그만 전쟁이 벌어지면 병사를 몇명 데리고  가야 합니다.우리도 병사에 해당
하는 "함수를  만들어야" 합니다.이걸 우리는  흔히 "함수를 짠다"고 얘기하고  C
용어로는 "함수를 정의(definition)"한다 라고 합니다. 즉  "이 함수는 이런 이런
일들을 한다..." 고 정의 하는 것입니다.

함수는 머리와 몸통을  가진 병사와 같기 때문에 이렇게 따로  따로존재해야 합니

main()
{
}
soldier1()
{
}
soldier2()
{
}

임산부가 애기를 갖고 있듯이 아래처럼 존재하는것은 말할것도 없이 틀린
것입니다.
main()
{
     baby()
     {
     }
}
따라서 혹시 위의 형태로 "baby"가 존재한다면 그것은 "함수가 아닙"니다.

싸움이 시작되면 총사령관은 바빠집니다. 마구 병사들을 부릅니다.
        "쏴라",
        "취사병은 밥해놔라"
우리도 함수를 불러야 합니다.
main()
{
        fire();
        do_cook();
}
여기서 몸통은 없어졌지요  ? 항상 머리만 부릅니다. 만일 몸통까지  쓰면 2 쌍둥
이 애기를 배고 있는  형태입니다. 위의 2 개는 함수이기 때문에  그렇게 쓰면 컴
파일러가 화를 냅니다.

그러나 위와 같이만 프로그램을 짜면 될까요  ? 당연히 틀렸습니다.병사가 있어야
부르지요. 따라서 아래같이 "머리 + 몸통" 형태로 함수를 "짜 주어야" 합니다.

main()
{
      gunshot();
      do_cook();
}
gunshot()
{
}
do_cook()
{
}

자 프로그램이 조금 복잡해 졌지요? 이제 좀 더 크게 전쟁을 벌여볼까요 ?
육해공군을 총동원합니다. 총사령관이 또 부릅니다."공군 사령관 폭격 개시",
 "해군제독 잠수함 발진"
우리도 부릅시다
main()
{
      airforce_commender();
      navy_commender();
}
airforce_commender()
{
      plain_go_and_fire();
}
navy_commender()
{
      submarine_go();
}

        여기서는 일단  공군사령관을 불렀습니다. 그렇습니다.  총사령관이 비행
기 조종사에게 직접 명령하는 것은 좋지않다는 것을  누구라도 잘 압니다. 그러나
부를 수 없다는  것은 아닙니다. 단지 비효율적이라는 이유로  공군사령관을 통해
서 부를 뿐이지요.
        위도  역시   완전한  프로그램이  아닙니다.   plain_go_and_fire()  과
submarine_go() 함수가 존재하지  않기 때문입니다. 첨가 시키면 다음과  같이 다
소 복잡해집니다.
main()
{
      airforce_commender();
      navy_commender();
}
airforce_commender()
{
      plain_go_and_fire();
}
navy_commender()
{
      submarine_go();
}
plain_go_and_fire()
{
}
submarine_go()
{
}
        자 이제 짐작이 가시지요 왜 프로그램이 복잡해  지는지 ? 부르는데는 아
무 제한이  없습니다. 몇번을 부르든지  몇단계를 거치든지 말입니다. 단  main()
은 아무도 부를  수 없습니다. 그리고 군대에서는 부하가 상관을  불러서 일을 시
킬 수는 없지 않습니까 ? (요즘은 가끔 길들이기도 하는 모양이지만...)
        여기서는 상관 없습니다.  위에 있건 아래있건 맘대로  부릅니다. 심지어
는 자기 자신도 부릅니다.어때요 아주 좋은 언어지요 ?
        그러나 이것은 장점이자 단점이 될 수 있습니다.  어떤 기준을 가지고 일
관성있게 불러야지 제멋대로 부르다가는 결국 자기 자신이 고생 합니다.
        보통 C  에서 부르는 규칙은, 위에서  예를 든것 처럼 군대,  회사, 혹은
주먹세계처럼 상하 관계가 분명한 집단에서 부하를  부르는 식으로 하면 정확합니
다.
***************************************************************************
4> 프로그램 내에서 함수 이름의 구분

        이제 함수 이름을  구별 할수는 있을 겁니다.즉 xxx() 처럼  소괄호() 앞
에 오는 이름이 함수명 입니다. 이런것도 역시  함수명 입니다.xxx(int a); 즉 소
괄호 사이에 글자들이 들어가 있어도 상관 없다는 뜻 입니다.
이런 형태에 다음과 같은 4개의 예외가 있지만 이 얘기는 나중에 하기로 합니다.
        1. if()         2. for()
        3  while()      4. switch()

이 함수의 이름들도 3 가지 역할로 나눌 수 있습니다. 즉
  <1> 함수 정의(짠다)  --> 함수의 "머리"와 "몸통"을 전부 우리가 만든다
  <2> 함수 호출(부른다) --> 함수의 "머리"만 온다.(다른 함수 몸통 안에서)
  <3> 함수 선언(알려준다) --> 함수의 "머리"만 온다.(main() 함수 위에서)

   tank_shot();       <--- 함수 선언 ("이런게 아래에 있어요" 하는 뜻)
   main()             <--- 함수 정의 ( 짰다. 총사령관 만듦.)
   {
        tank_shot();  <--- 함수 호출 ( 불렀다. 일을 시킬라고.)
   }

   tank_shot()        <--- 함수정의 ( 짰다. 병사하나 만들었다)
   {
   }

<1>  "함수를 짠다" 고 하는 것은 아시겠지요  ? 머리와 몸통을 전부 만드는 겁니
        다.
<2> "함수를 부른다"는  것도 머리만 쓰면 되지만 반드시 기억  할것은 다른 함수
        몸통의 내부에서 부를 경우만 입니다.
<3> main() 위에 이름만 적는 경우도 있습니다.이건  "총사령관에게 보여 주는 출
        석부" 라고 생각하면 됩니다. 병사가 많아지면  다 기억을 못해서 명단을
        위와같이 보여줍니다.
                또 람보  같이 특수한  병사를 만들어  놨으면 일부러  위와같이
        main() 함수 밖에서  머리만 xxx(); 써줍니다. 위치가 "함수  밖" 이라는
        걸 꼭 확인해야 합니다.이걸 우리는 "함수의 선언"이라고 합니다.

이제  위와같이 똑같은 이름 3개 의 의미를 아시겠지요 ?
[269쪽] 부터 이 내용에 관한 정리가 되어있습니다.
********************************************************************
5> 함수를 부르는 방법 3 가지
      1. " 쏴라"
      2. " 미사일을 쏴라"
      3. " 미사일을 쏴라 그리고 보고하라"
********************************************************************
        이제 함수 이름 및 위치를 보고 그 역할을  구별 할 수는 있을 겁니다.그
럼 이제 함수의 호출 부분 중에서 부르는 방법  3 가지를 다시 예를 들지요. 총사
령관이 소총수 한테 "쏴라" 하면 그냥 쏩니다. 즉
 main()
{
    fire();
}
        그러나 람보 한테 "쏴라" 그러면 람보는 총을  못 쏩니다. 왜냐하면 그는
무기가 너무  많아서 뭘 쏠지 모르기  때문입니다. 이와같이 일을  많이할수 있는
함수를 부를때는 "미사일을 쏴라"하고 구체적으로 불러야 합니다. 즉
main()
{
     fire(missile);
}

또 "미사일 과 화살을 쏴라" 할때는
main()
{
     fire(missile,arrow);
}
쉽지요 ?
여기서 missile 과 arrow 처럼 소괄호 사이의  단어를 argument라고 부릅니다. 다
음 시간에 할 "변수명" 들이지요. 모양은 다양하지만  일단우리는 () 사이의 콤마
"," 로 이 매개 변수들이 몇 개인지 셀 수 있습니다.

clrscr();                              <-- 0 개
draw_menu();                           <-- 0 개
exit(0);                               <-- 1 개
clear_string(x,y,wordlong);            <-- 3 개
prt_string(new_x,new_y,word_array);    <-- 3 개
srand((unsigned) time (&t));           <-- 1 개 (콤마 가 없어요)

      마지막으로 "미사일을 쏴라 그리고 보고하라" 는  일을 할때는 다음과 같이
합니다.
main()
{
     ok = fire(missile);
}
즉 fire(missile)이 일을  하고나서 "잘 쐈음" 이나 "폭탄이  없어서 못쐈음"하는
따위의 결과를 보고하는 형태입니다. 위에서는 결과가 ok  라는 변수에 들어 갑니
다. 이 형태의 특징은 함수머리 왼쪽에 꼭다른 글자들이 있다는 겁니다. 즉

keyin = getch();                  <--getch() 왼쪽
stream = fopen(filep,"rt");       <--fopen() 왼쪽
if(!bioskey(1))                   <--bioskey() 왼쪽

        이것들은 물론 우리가  함수를 짤때 위의 3 가지중 어떤방법을  쓸 지 미
리 결정해야 합니다.

---------------< 참고 >---------------------
1. /*     */  :  이 사이는 설명문(주석문 이다)
        프로그램을 보면 /*    */ 쌍을 볼 수 있습니다. 이건 프로그램  과는 아
무 상관  없는 설명문 입니다. 자기가  메모를 하고 싶은 모든것을  씁니다. 쓰는
요령은 다음과 같습니다
                ---------------------------
                1)  아무데나 써도 무관.
                2)  몇줄이라도 무관.
                3)  가능한 자주 사용할것 
                ---------------------------
                예 1)   /* good */

                예 2)   /*
                           good also    
                        */

<숙제>  오늘 내용은 사실  설명 처럼 간단 한것은 아닙니다. 우리는  사실 이 함
        수로 두달을 보내야  되고 지금은 그 시작에 불과 합나다.  그래서 이 부
        분은 계속 읽어 보는 것이 필요합니다. 다음 숙제를 하세요

        1> BGIDEMO.C 를 터보 디렉토리 밑에서 찾는다.
           (C:\> ff bgidemo.c 를 하세요) 노턴 유틸리티에 있습니다.
        2> bgidemo.c를 위에서 설명한 프로그램의의 5 가지 형태에 맞춰
                 분류 하세요
        3> 위에서 설명한, 3가지 함수명의 사용 예를 실제로 찾아 보세요.

                1. 함수 정의(짠다)
                         --> 함수의 "머리"와 "몸통"을 전부 우리가 만든다
                2. 함수 호출(부른다)
                         --> 함수의 "머리"만 온다.(다른 함수 몸통 안에서)
                3. 함수 선언(알려준다)
                         --> 함수의 "머리"만 온다.(main() 함수 위에서)

******************************< 끝 맺으며 >********************************
수고 하셨습니다.
***************************************************************************

 


profile
에버러브 2008.07.09 17:03

좋은자료 감사합니다.^-^

profile
까부기 2008.10.05 14:46
좋은 자료 감사합니다^^
profile
으미으미으미 2008.12.16 18:58
좋은자료 감사합니다.
profile
마징가 2009.01.09 11:27
좋은 자료 감사합니다~~~
profile
베라클 2009.02.26 20:22
좋은 자료 감사합니다.
profile
버닝비 2009.09.22 15:37
좋은 자료 감사합니다.
profile
큐티두더지 2009.10.13 16:15
몇번 더 읽어봐야겠다.
완전히 이해가 안되네ㅜ.ㅜ
profile
한틀 2009.10.30 18:14
좋은 자료 감사합니다.^^
profile
스마일러 2009.12.29 16:30
ㅋ 감사드립니다.
profile
스마일러 2009.12.29 16:37
무지복잡한 내용인데 재미있게 풀어주셨네요.... 앞으로도 좋은 강좌 부탁드립니다.
profile
용정 2010.01.15 12:26
좋은자료 감사합니다. 글쓰신분은 무지 재미있는분이시네요.
profile
안다솜 2010.02.03 13:45
감사합니다.
profile
CoolHead 2010.04.14 13:26
감사합니다. 쏙쏙들어오네요.
profile
KillingS 2010.05.23 14:43
좋은 자료 감사요~
profile
우보만리 2010.07.14 13:45
유용한 자료 감사합니다.
profile
jlee377 2010.07.28 13:59
좋은자료 감사합니다^^
profile
시나브로69 2017.06.24 15:38
좋은 자료 감사합니다.
search
List of Articles
번호 분류 제목 평점 포인트 판매자 등록일 구매수 조회 수
공지 공공의 목적으로 공유하고자 하는 소프트웨어는 '소프트웨어 자료실'에 업로드를 요청드립니다.
공지 구매후 평점 댓글을 남겨주시면 구매포인트의 20%를 돌려드립니다.
100 펌웨어 & 코딩언어 캠퍼스 C 강좌_19 [5] 무료 프리미엄 2007-11-15 0 936
99 펌웨어 & 코딩언어 캠퍼스 C 강좌_18 [3] 무료 프리미엄 2007-11-15 0 965
98 펌웨어 & 코딩언어 캠퍼스 C 강좌_17 [3] 무료 프리미엄 2007-11-07 0 877
97 펌웨어 & 코딩언어 캠퍼스 C 강좌_16 [3] 무료 프리미엄 2007-11-07 0 1247
96 펌웨어 & 코딩언어 캠퍼스 C 강좌_15 [4] 무료 프리미엄 2007-11-07 0 998
95 펌웨어 & 코딩언어 캠퍼스 C 강좌_14 [2] 무료 프리미엄 2007-11-05 0 966
94 펌웨어 & 코딩언어 캠퍼스 C 강좌_13 [2] 무료 프리미엄 2007-11-05 0 1053
93 펌웨어 & 코딩언어 캠퍼스 C 강좌_12 [4] 무료 프리미엄 2007-11-05 0 1008
92 펌웨어 & 코딩언어 캠퍼스 C 강좌_11 [3] 무료 프리미엄 2007-11-05 0 1021
91 펌웨어 & 코딩언어 캠퍼스 C 강좌_10 [4] 무료 프리미엄 2007-11-04 0 1072
90 펌웨어 & 코딩언어 캠퍼스 C 강좌_9 [6] 무료 프리미엄 2007-11-04 0 1309
89 펌웨어 & 코딩언어 캠퍼스 C 강좌_8 [7] 무료 프리미엄 2007-11-04 0 1294
88 펌웨어 & 코딩언어 캠퍼스 C 강좌_7 [9] 무료 프리미엄 2007-11-04 0 1101
87 펌웨어 & 코딩언어 캠퍼스 C 강좌_6 [9] 무료 프리미엄 2007-11-04 0 1357
86 펌웨어 & 코딩언어 캠퍼스 C 강좌_5 [10] 무료 프리미엄 2007-11-04 0 1458
85 펌웨어 & 코딩언어 캠퍼스 C 강좌_4 [11] 무료 프리미엄 2007-11-04 0 1587
84 펌웨어 & 코딩언어 캠퍼스 C 강좌_3 [10] 무료 프리미엄 2007-11-04 0 1310
» 펌웨어 & 코딩언어 캠퍼스 C 강좌 _2 [17] 무료 프리미엄 2007-11-04 0 1396
82 펌웨어 & 코딩언어 캠퍼스 C 강좌 _1 [28] 무료 프리미엄 2007-11-04 0 2233
81 펌웨어 & 코딩언어 아스키표(ASCII TABLE) [4] 무료 나니오 2007-10-13 0 1635
  • 어떤 책들은 맛만 보고, 나머지 책들은 삼켜버리고, 몇몇 소수의 책은 잘 씹어서 소화시켜야 한다.
    - 베이컨
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.