1 / 99

C 언어 및 실습 C Language and Practice

C 언어 및 실습 C Language and Practice. 과목소개 및 실습계획 Chap 1,2 : C 언어의 개요. 과목소개. 교과목의 성격

aleta
Download Presentation

C 언어 및 실습 C Language and Practice

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. C언어 및 실습C Language and Practice 과목소개 및 실습계획 Chap 1,2 : C 언어의 개요

  2. 과목소개 • 교과목의 성격 • C 언어는 고급언어와 저급언어의 특징을 모두 가지고 있어 다양한 프로그램에서 널리 사용되는 모든 프로그래밍의 기본이 되는 프로그래밍 언어이다. C 언어를 통해 우리는 컴퓨터 프로그래밍의 기본 문법과 컴퓨터 구조의 기초지식을 배우며 주어진 문제를 프로그래밍언어를 이용하여 해결하는 방법을 익힐 수 있다. 본 과목에서는 이러한 C 언어의 필수적인 프로그램 이론과 실질적인 프로그램 방법들을 실습을 통해 병행 학습한다. • 교과수업 주요 목표 • 본 과목에서는 C 언어의 이론 및 개념을 강의하고 실습과 과제를 통하여 컴퓨터 구조의 기초지식과 실무에 필요한 프로그래밍 능력 및 알고리즘 개발 능력을 배양하는 것을 목표로 한다. 세부적인 내용은 다음과 같다.1. 프로그램 기본 구조인 제어구조, 데이터의 형(Type), 부 프로그램 등의 개념을 이해한다.2. 배열 및 포인터를 이용하여 가변적인 데이터 블록을 설정하여 메모리를 효율적으로 사용한다.3. 파일의 개념과 종류에 대해 이해하고 보조기억장치를 이용하여 데이터를 처리한다.4. C 언어를 이용하여 알고리즘을 구현 및 분석하는 능력을 갖춘다.5. 주어진 문제를 C 언어를 이용하여 구조적 프로그래밍 방법으로 해결할 수 있다.

  3. 실습계획 (1/6) • 1주 : C 언어의 개요 및 data type • 변수와 상수 • overflow/underflow 개념 • 2, 10, 8, 16진수 표현법 • 각 data type의 표현 범위 • 연산자 : cast, sizeof • 함수 : printf(), scanf() --> 각각의 변환문자 및 변환 사양 수정자 • 2주 : 문자열 • 문자열의 개념 • 상수와 선행 처리기 • 함수 : strlen(), gets(), puts(), getch(), putch(), getchar(),putchar() • 3주 : 연산자, 산술식, 문 • 연산자의 종류 및 우선순위, 결합규칙 • 증가/감소 연산자(전위와 후위) • 복문(block)의 개념 • 수형(data type)의 변환 규칙 • 비트 단위 연산 숫자: 하나 둘, 표현(손가락) 문자, 문자들 : a, “b”, 엄마,아빠… 계산 : 1+1 = ? 연산자: +,-,X, /…

  4. 실습계획 (2/6) • 4주 : 선택 방법 • 선택문의 종류(if, if~else, if~else if) • 다중 선택문(switch문) • 관계 연산자(<, <=, ==, >=, >, !=) • 논리 연산자(&&, ||, !) • 조건 연산자( ? : ) • 5주 : 반복문과 기타 제어문 • 반복문의 종류(for, while, do~while) • 기타 제어문(break, continue, goto) • 6주 : 함수 • 함수의 개념 • 실인자(actual arguments)와 형식인자(formal argument) 및 다중 인자 • 함수형(function types) 둘중, 또는 여럿중 하나를 선택-선택문, 선택조건연산 일을 수행 -시작,반복,연속, 중단, 재시작,종료 수행하는 일(기능) 또는 그 일을 더 잘게 나눈 일(함수)

  5. 실습계획 (3/6) • 7주 : Storage class • 지역 변수와 전역 변수 • storage class • 8주 : 중간고사 • 9주 : 선행 처리기(preprocessor) • 선행 처리 기능의 개념 • 매크로 함수의 개념과 사용시 주의 사항 • header file의 개념 • 선행 처리기의 지정어(#define, #include, #undef, #if, #ifdef, #ifndef, #else, #endif) 숫자나 문자들을 저장할 공간 및 실행 범위 A = 3, B=‘a’, ; 수식과정이 너무 복잡해 –간단하게 할 수 없을까 !!!

  6. 실습계획 (4/6) • 10주 : 배열과 포인터(Ⅰ) • 배열의 개념 • 다차원 배열 • 배열의 초기화 • 배열과 포인터의 관계 • 다차원 배열과 포인터 • 함수와 배열 • 11주 : 포인터(Ⅱ) • 함수와 포인터 • 함수에 대한 포인터 • 포인터 배열 • 포인터의 포인터 • 기억 장소 관리 함수(malloc(), free(), calloc(), ...) 같은형식의 숫자나 문자들을 저장하는 메모리 공간들의 집합의 표현 A[10] = 3,4,5,…, B[3]=‘a’,’b’,’c’; 숫자나 문자들이나수행하는 일(함수)가 저장되어있는 메모리 공간들의 장소(위치)를 표현

  7. 실습계획 (5/6) • 12주 : 문자열과 문자열 함수 • 문자 스트링(character string)의 개념 • 문자 스트링의 초기화 • 포인터와 스트링 • gets(), puts(), scanf(...%s...), printf(...%s...) • strlen(), strcat(), strcmp(), strcpy() • 명령행 인자(command-line argument) • 13주 : 구조체와 그 밖의 데이터형 • 구조체(struct)의 개념 • 멤버 참조 • 구조체에 대한 포인터 • 함수와 구조체 • 공용체(union)의 개념 • 14주 : File I/O • File I/O 함수 {fopen(), fclose(), getc(), putc(), fprintf(), fscanf(), fgets(), gputs(), fseek()} • 저수준I/O의 개념(open(), close(), read(), write(), ...) • string 변환 함수(atoi(), atof(), ...) 문자들을 어떻게 읽고 쓸까 !!! 다른 형식들의 숫자나 문자들을 한꺼번에 저장하는 메모리 공간들의 집합을 표현 파일(숫자(들),문자(들)을 어떻게 메모리로부터 저장하고 읽어내고 또 저장하고…할까 !!!

  8. 실습계획 (6/6) • 15주 : 응용 프로그램 (종합) • 스트림의 개념 • 파일 열기와 닫기 • 파일 입출력 처리 • 16주 : 기말고사 • 레포트: 수업 후, 매주 프로그램 결과 제출 그럼, C언어로 프로그램을 작성해볼까요 ?

  9. C언어 및 실습C Language and Practice Chap 1. C언어의 개요

  10. 단원의 개요 단원의 학습목표 학습 유의점 1. C 언어의 형성 과정의 역사를 이해한다. 2. C 언어의 특징(장․단점)을 이해한다. 3. C 언어의 일반적인 형태를 알아본다. 4. C 프로그램의 논리적 구조를 파악한다. 1. C언어가 하향식 설계( top-down design)에 의한 구조적 프로그램을 구현하기에 적합함을 이해한다. 단원의 학습계획 사용된 함수 1. C 언어의 형성과 C언어와 UNIX와의 관계를 이해한다. 역사 C언어의 보급 확산 이유를 이해한다. 2. C 언어의 특징C언어 특성 및 장단점을 이해한다. 3. C 언어 구조 C언어의 구조적, 객체 지향적 프로그 램에 대해 이해한다. C 프로그램의 기본구조를 파악한다. printf() : 표준출력함수(stdout, 화면출력) - 23pp getchar() : 표준입력함수(stdin, 화면입력) - 22pp return(): 반환함수 - 22p

  11. C언어의 역사 • 이기종 컴퓨터 간의 호환성을 가질 수 있을 정도의 고급언어이면서, 기능면에서 어셈블리 언어처럼 컴퓨터의 하드웨어 기능까지 제어할 수 있는 새로운 프로그래밍 언어가 필요함. • 1972년 벨(Bell) 연구소의 Dennis Ritch에 의해 개발. • UNIX운영체제의 구현을 위해서 사용. • 유래 : ALGOL 60 CPL BCPL B C Java, C#, C++ • ANSI C, MS C, Turbo C - ANSI C++, Visual C++, Turbo C++, Borland C++ 프로그램 확장 1960년 ALGOL 60 : 국제 위원회에서 설계 1963년 CPL(Combine Programming Language) : 영국 케임브리지와 런던 대학에서 공동으로 설계한 언어로 ALGOL 60의 영향을 받음 1967년 BCPL(Basic Combined Programming Language) : 영국 케임브리지 대학의 마린 리챠드가 설계 1970년 B : 미국의 벨 연구소의 켄톰슨이 설계 1972년 C : 미국의 벨 연구소의 데니스리치가 설계 1983~1989년 ANSI C : (ANSI X3J11, ISO C) 1986년 C++ : 벨 연구소 비얀스트로스트룹이 설계 표 2-1 C 언어의 역사적 배경 * ANSI (American National Standards Institute) ; 미국 표준 협회 * ISO (International Standardization Organization) 국제표준위원회)

  12. C언어의 특징 • 고급 언어이자 저급언어로서 시스템 프로그래밍도 가능중급언어 • 저급언어 : 컴퓨터가 실행하는 실제의 명령(기호형태)을 다룸 • 어셈블리 언어(Assembly Language) • 고급언어 : 여러 가지 제어구조와 I/O명령문 등을 제공(프로그래밍이 쉽고 빠르다>) • Pascal, Delphi. Visual Basic, Java • 함수(function)의 집합으로 구성되어 구조적 프로그램에 적합 • 다양한 자료구조의 표현에 적합하다. • 다른 시스템으로의 이식성이 좋다. • 입.출력 문장이 따로 존재하지 않는다(library이용). 표 2-2 C 언어의 장단점

  13. + - ⅹ / = 3 2 6 7 + - ⅹ ⅹ 계산기 계산기 3 ⅹ 2 + 6 + 7 = / = C언어의 구조 • 구조적 프로그래밍 • 큰 규모의 프로그램은 일관성을 갖는 기능에 따라 여러 개의 작은 단위프로그램으로 나누어 작성하는 것이 프로그램의 개발과 관리, 그리고 프로그램에 대한 이해를 쉽게 해준다. • 프로그램의 처리는 하나의 주(main) 프로그램이 필요한 시점에서 기능별(Functional) 단위 프로그램들을 호출하여 원하는 처리를 하는 방법으로 진행 • 구조적 프로그래밍(structured programming)은 이와 같은 방법으로 순서구조, 조건구조 및 반복구조 만으로 프로그램을 작성하는 것 + - ⅹ / = 19 ⅹ + + = 19

  14. + - ⅹ / = 3 2 6 7 + 호출 - 호출 ⅹ ⅹ 호출 계산기 계산기 3 ⅹ 2 + 6 +7 = / 호출 = #include <stdio.h> void main() { inta, b, c, d; intv = 12; intw = 3; intx = 2; inty = 6; intz= 7; printf(" 12 / 3 X 2 + 6 - 7 = ? 의 계산프로그램 입니다\n"); a = v / w; b = a * x; c = b + y; d = c - z; printf("최종답은%d 입니다.\n", d); } C언어의 구조 • 구조적 프로그래밍 • 큰 규모의 프로그램은 일관성을 갖는 기능에 따라 여러 개의 작은 단위프로그램으로 나누어 작성하는 것이 프로그램의 개발과 관리, 그리고 프로그램에 대한 이해를 쉽게 해준다. • 프로그램의 처리는 하나의 주(main) 프로그램이 필요한 시점에서 기능별(Functional) 단위 프로그램들을 호출하여 원하는 처리를 하는 방법으로 진행 • 구조적 프로그래밍(structured programming)은 이와 같은 방법으로 순서구조, 조건구조 및 반복구조 만으로 프로그램을 작성하는 것 + - ⅹ / = 19 ⅹ + + = 19

  15. C언어의 구조 • 객체지향 프로그래밍 • 하드웨어의 부품처럼 재사용이 가능하고 유지 보수가 편리 • 프로그램 기술방식이 인간의 사고 체계를 그대로 묘사할 수 있도록 변화 • 프로그래머는 이미 만들어져 있는 객체(Object)의 내부는 알지 못하고 그 객체가 수행할 수 있는 기능만을 인지한 상태에서 문제 해결에 필요한 메시지를 해당 객체에 전달 • 해당 객체는 자신의 기능만으로 해결하지 못하는 부분에 대해서는 메시지 전달을 통해 다른 객체에 의해서 해결될 수 있도록 함 • 특징 • 다형성(Polymorphism) : 프로그래머에게 하나의 함수를 가지고 연산에 포함된 객체의 형에 따라 다른 객체에 똑같은 기능을 수행할 수 있도록 함 • 속성 계승(Inheritence) : 프로그래머가 새로운 객체를 정의하고자 할 경우에 객체의 모든 기능을 새롭게 정의하지 않고, 다른 객체로부터 기능의 일부를 물려받음 • 정보 은닉(Information Hiding) : 어떤 객체의 알고리즘이나 자료구조는 그 객체 내에서만 참조할 수 있고 다른 객체나 외부로 부터 차단. • 언어 • C++, Ada++, SIMULA, Smalltalk 등 • 단점 • 자동기억장소 관리로 인한 지연(delay)로 기존언어에 비해 속도가 떨어짐

  16. 객체 함 수 함 수 메소드 메 메시지 소 드 데이터 함 수 함 수 함 수 함 메소드 메소드 메 메시지 소 메시지 드 데이터 공유 데이터 공유 데이터 메소드 메 소 드 메소드 데이터 객체 메시지 함 수 함 수 메소드 객체 객체지향 절차지향 C언어의 구조 • 객체지향 프로그래밍 • Procedural-Oriented(절차지향) : C 언어 • 데이터를 변화시키는 알고리즘을 순서적으로 나열시켜 일을 처리 • Object-Oriented(객체지향): C++ 언어 • 객체들을 생성하고 객체들간에 메시지를 통하여 정보를 교환함으로서 일을 수행 • 객체  데이터 + 메소드 • 클래스  속성(데이터의 구조) + 메소드

  17. C언어의 구조 • C프로그램의 구조( Main 프로그램이 컴파일되기 전에 프로그램에 일련의 작업을 지시 (include, define 등) : 입.출력용 헤더(header) 파일 선행처리기 명령 전역 데이터 부분 모든 함수에서 전역적으로 사용하는 변수들을 선언 main( ) {……} 가장 먼저 호출되는 함수( main함수 { }는 반드시 포함) 명령문 C의 구성 블록을 이루는 함수들 함수 a( ) {…} 명령문 함수 b( ) {…} 명령문의 다섯 가지 유형 명령문 선언대입함수제어Null 그림 2-1 C 프로그램의 구조

  18. 선행처리기 명령 전역 데이터 부분 main( ) 명령문 함수 a( ) 명령문 함수 b( ) 명령문 C언어의 구조 • C프로그램의 구조 #include <stdio.h> #define BOOL int #define TRUE 1 #define FALSE 0 BOOL whitesp(char c); main() { intch; int count =0; while( ( ch = getchar() ) != EOF ) if( whitesp(ch) ) count++; printf("There are %d whitespace character.\n", count); } BOOL whitesp(char c) { if( c==' ' || c=='\n' || c== '\t' ) return(TRUE); else return(FALSE); } #include <stdio.h> #define BOOL int #define TRUE 1 #define FALSE 0 BOOL whitesp(char c); main() { intch; int count =0; while( ( ch = getchar() ) != EOF ) if( whitesp(ch) ) count++; printf("There are %d whitespace character.\n", count); } BOOL whitesp(char c) { if( c==' ' || c=='\n' || c== '\t' ) return(TRUE); else return(FALSE); } header 화일[초기 전역 선언부] 전역(global)선언부 main 함수 {…}시작 내부 지역(local)변수선언 main() 함수본체 처리부 main 함수 끝 함수 시작 whitesp() 함수본체 함수의 끝 whitesp() 끝 그림 2-2 C 프로그램의 구조 파악

  19. C 언어의 구조 • C원시(소스)파일: C언어로 작성된 프로그램 파일(.C확장자) • 목적(오브젝트)파일: 기계어로 구성된 파일(.obj확장자) • 실행파일: 실행 가능한 파일(.exe확장자) • 컴파일러: 소스 파일을 목적 파일로 만드는 작업 • 링커: 목적 파일을 실행파일로 만드는 작업 그림 2-3 C 프로그램의 수행 과정

  20. 단원의 개요 단원의 학습목표 학습 유의점 1. C 언어의 형성 과정의 역사를 이해한다. 2. C 언어의 특징(장․단점)을 이해한다. 3. C 언어의 일반적인 형태를 알아본다. 4. C 프로그램의 논리적 구조를 파악한다. 1. C언어가 하향식 설계( top-down design)에 의한 구조적 프로그램을 구현하기에 적합함을 이해한다. 단원의 학습계획 사용된 함수 1. C 언어의 형성과 C언어와 UNIX와의 관계를 이해한다. 역사 C언어의 보급 확산 이유를 이해한다. 2. C 언어의 특징C언어 특성 및 장단점을 이해한다. 3. C 언어 구조 C언어의 구조적, 객체 지향적 프로그 램에 대해 이해한다. C 프로그램의 기본구조를 파악한다. printf() : 표준출력함수(stdout, 화면출력) - 23pp getchar() : 표준입력함수(stdin, 화면입력) - 22pp return(): 반환함수 - 22p

  21. 상위 메모리 구조 스택 세그먼트 Heap 가변크기 데이터 세그먼트 (정적 데이터) 텍스트 세그먼트 (코 드) 고정크기 하위 메모리 구조 C 프로그램의 수행을 위한 메모리 구조 프로그램의 구동 • 실행 파일 • 컴파일, 링킹 과정을 통해 생성 • 운영체제의 로더(loader)가 메모리에 적재 • 하나의 프로세스 주소 공간을 갖음 • 스택(Stack) 세그먼트 • 힙(Heap) • 데이터 세그먼트 • 텍스트 • CPU가 해당 메모리 주소 공간을 읽고 수행함 실행 가능 파일 (executable file) 로 더

  22. 프로그램 개발환경 • 코드 에디터 • 프로그램을 작성하는 과정에서 사용하는 편집기 • 단축키, 실행취소/재실행, 매크로, 맞춤법 검사 외에 각 에디터마다 특징이 있음 • Emacs, Ultra Editor, Eclipse, Crimson Editor • 통합개발환경 (Integrated Development Environment) • 컴퓨터를 이용하여 Application을 개발하는 과정에서 에디터,컴파일러,어셈블러,링크,디버그 등의 각각의 단계가 모두 하나의 프로그램 안에 통합되어 있는 것 • 예) 터보C, Boland C, Delphi, Visual Studio, etc.

  23. 프로그램 개발환경 • Turbo C / Boland C • UNIX CC/GCC • Boland C++ • Visual Studio

  24. 프로그램 개발환경 사용법 • Turbo C / Boland C

  25. 프로그램 개발환경 사용법 • Turbo C / Boland C • 프로그램의 작성은 통합환경에 포함되어 있는 에디터를 사용 • “File”메뉴의 New를 선택

  26. 프로그램 개발환경 사용법 • Turbo C / Boland C • 프로그램의 작성은 통합환경에 포함되어 있는 에디터를 사용 • “File”메뉴의 New를 선택

  27. 프로그램 개발환경 사용법 • Turbo C / Boland C • 표준 출력함수를 사용하여 화면에 “Hello. Happy to Meet U”를 출력하는 프로그램을 작성

  28. 프로그램 개발환경 사용법 • Turbo C / Boland C • 고유의 파일명을 지정하기 위해 “File”메뉴의 “Save”선택

  29. 프로그램 개발환경 사용법 • Turbo C / Boland C • 고유의 파일명을 지정하기 위해 “File”메뉴의 “Save”선택

  30. 프로그램 개발환경 사용법 • Turbo C / Boland C • 파일명 “tmp.c”입력 ☞버전마다 자동으로 “.c”또는 “.cpp”확장자가 붙음

  31. 프로그램 개발환경 사용법 • Turbo C / Boland C • 에디터에서 변경된 파일의 이름을 확인

  32. 프로그램 개발환경 사용법 • Turbo C / Boland C • 컴파일만 진행시 “Complile”메뉴의 “Compile”선택 또는 [Alt+F9] • 실행파일까지 생성시 “Compile”메뉴의 “Make”선택 또는 [F9]

  33. 프로그램 개발환경 사용법 • Turbo C / Boland C • 실행 파일 생성이 성공적으로 끝난 후 Boland C에서 보여주는 메세지

  34. 프로그램 개발환경 사용법 • Turbo C / Boland C • 생성된 실행 파일 수행 • “Run”메뉴의 “Run”선택 또는 [Ctrl+F9]

  35. 프로그램 개발환경 사용법 • Turbo C / Boland C • 결과 확인은 “Windows”메뉴의 “User screen”선택 또는 [Alt+F5]

  36. 프로그램 개발환경 사용법 • Turbo C / Boland C • 결과 확인은 “Windows”메뉴의 “User screen”선택 또는 [Alt+F5] ☞IDE로 돌아오려면 임의의 키 입력

  37. 프로그램 개발환경 사용법 • Turbo C / Boland C • 생성된 실행 파일 수행

  38. 프로그램 개발환경 사용법 • UNIX CC/GCC • UNIX환경에서 소스 프로그램을 작성하고 저장하려면 vi와 같은 시스템에서 제공되는 에디터를 사용해야 함 • 프로그램을 작성하려면 프롬프트 상에 “vi tmp.c”를 입력

  39. 프로그램 개발환경 사용법 • UNIX CC/GCC • 표준 출력함수를 사용하여 화면에 “Hello. Happy to Meet U”를 출력하는 프로그램을 작성 • 작성 후 저장하기 위해 명령 입력 모드에서 “:wq”를 입력

  40. 프로그램 개발환경 사용법 • UNIX CC/GCC • 표준 출력함수를 사용하여 화면에 “Hello. Happy to Meet U”를 출력하는 프로그램을 작성 • 작성 후 저장하기 위해 명령 입력 모드에서 “:wq”를 입력

  41. 프로그램 개발환경 사용법 • UNIX CC/GCC • 소스 파일 생성 후 vi 에서 보여주는 메세지

  42. 프로그램 개발환경 사용법 • UNIX CC/GCC • cc(c compiler) : UNIX 환경에서의 대표적인 C컴파일러 • gcc : GNU 그룹의 컴파일러로 cc와 사용법 및 성능이 유사 • 컴파일 후 생성되는 실행파일(UNIX에서는 로드 모듈)의 이름은 “a.out” • 컴파일 방법 : “cc filename.확장자” • 여러 개의 파일인 경우 : “cc filename1.확장자filename2.확장자filename3.확장자”

  43. 프로그램 개발환경 사용법 • UNIX CC/GCC • 실행 방법 : “a.out”또는 “./a.out” • 컴파일과 실행을 동시에 진행 : “cc tmp.c ; ./a.out” • 컴파일 시 실행파일 이름변경 : “cc tmp.c -o hello” • 컴파일 시 실행파일 이름변경 및 바로 실행 : “cc tmp.c -o hello ; ./hello”

  44. 프로그램 개발환경 사용법 • Boland C++ • Boland C++을 실행하면 다음과 같은 개발환경이 나타남 • 최초 실행 시 그림과 같은 로고가 나타나며 ‘ok’버튼을 누르면 사라짐

  45. 프로그램 개발환경 사용법 • Boland C++ • 프로그램 작성을 위한 에디터는 “file”메뉴의 “New”항목 하위의 “Text Edit”을 선택

  46. 프로그램 개발환경 사용법 • Boland C++ • 프로그램 작성을 위한 에디터는 “file”메뉴의 “New”항목 하위의 “Text Edit”을 선택

  47. 프로그램 개발환경 사용법 • Boland C++ • 프로그램 작성 후 컴파일 및 실행 시 “Project”메뉴의 “Make all”선택 또는 [F9]

  48. 프로그램 개발환경 사용법 • Boland C++ • 실행 파일 생성 후 Boland C++ 에서 보여주는 메시지와 Work 디렉토리 하위에 생성된 목적파일과 실행 파일 • Boland C++의 make 메시지 윈도우 • 생성된 목적파일과 실행파일

  49. 프로그램 개발환경 사용법 • Visual Studio 6.0 • 마이크로소프트의 개발 환경으로 프로그램,웹 사이트,웹 프로그램 등을 개발 • 윈도우와 웹 응용프로그램 개발에 적합한 통합개발환경 • 구성요소 • Visual Basic • Visual InterDev • Visual J++ • Visual Fox Pro • Visual SourceSafe

  50. 프로그램 개발환경 사용법 • Visual Studio 6.0 • 초기화면

More Related