페이지

글타래

2009년 6월 11일 목요일

요즘세대도 이렇게 공부하려나? C언어 이야기

요즘은 어떻게 공부하는지 모르지만,4GL이후로 1998~2000년이 될 무렵에도 BIT,BYTE도 모르는 4-5년차 4GL 프리랜서들(어이없게도 일명 중.고수급이라고 당시 4-5백/월 받던 사람들임) 을 많이 봐왔지만,,--;;
요즘은 또 어떤지 모르겠습니다. 소프트웨어 개발자를 바라는 분들은 아래에 기본기에 충실할 좋은 강좌가 있으니 꼭 열람하시기 바랍니다.

C언어 이야기 1~17장
C언어 이야기 18~22장
C언어 이야기 부록

23.C언어 관련 주요 질문과 답변
24. C언어 함수 요약
24.1.터보C 2.0 함수 요약(가나다 순)
24.2.볼랜드C++ 3.1 함수 목록(가나다순)


C언어 이야기 2부(31장부터 시작)
C언어 이야기 3부 : 예제 모음

1.컴퓨터언어와 언어 프로그램
1.1.인간 세상의 언어와 컴퓨터 세계의 언어는 같습니다
1.2.컴퓨터
언어의 구분
1.3.컴퓨터언어와 컴퓨터언어 프로그램의 차이는?
1.4.컴파일 방식과 인터프리터 방식의 차이
1.5.컴파일러가 하는 일은?


2.C언어는 어떤 언어인가
2.1.C언어의 탄생과 역사, 장점
2.2. C언어
프로그램의 대명사 터보C와 볼랜드C++에 대해서
2.3. C와 C++의 차이는?
2.4. C언어 프로그램은 왜 그리
많은가?
2.5.왜 비주얼C++이 아닌 터보C로 C언어를 배우는가?


3.프로그램 만드는 과정
3.1. 편집기와 소스 파일의 역할
3.2.컴파일러와 목적 파일(*.obj)의 역할
3.3.링커와 링크 작업

4. 볼랜드사의 컴파일러 프로그램 설치와 환경 설정

4.1.터보C와 터보C++, 볼랜드C++, 볼랜드C++ 빌더의
차이
4.2. 공개용 터보C와 터보C++ 구하기
4.2.1.터보C 2.01 다운로드 받기

4.2.2.터보C++ 1.01 다운로드 받기
4.3.터보C 설치하기
4.3.1.원판 터보C 2.0 설치하기

4.3.2.인터넷으로 받은 터보C 2.01 설치하기
4.3.3.터보C 설치 때의 문제점
4.4.
터보C 2.0의 환경설정
4.5.터보C++ 1.01 설치와 환경 설정
4.5.1.터보C++ 1.01 설치하기

4.5.2.터보C++ 1.01의 환경 설정
4.6.볼랜드C++의 설치
4.7.볼랜드C++의 환경
설정하기
4.7.1.도스용 볼랜드C++의 환경 설정하기
4.7.2.윈도용 볼랜드C++의 환경 설정하기


5.MS사의 비주얼C++ 설치와 환경 설정
5.1.비주얼C++의 특징
5.2.비주얼C++ 6.0의 처음 설치

5.3.구버전 사용자의 6.0 설치
5.4.'비주얼C++ 6.0'의 실행과 환경설정


6. 터보C로 짜보는 첫 번째 프로그램 hello.c
6.1.예제로 제공되는 hello.c 파일을 불러오는 방법

6.2.hello.c 파일을 실행 파일로 만드는 방법
6.3.hello.exe를 실행하고 확인해보는 방법


7. 도스용 볼랜드C++로 짜보는 첫 번째 프로그램 hello.c
7.1.bc.exe를 실행한 뒤에 hello.c를 불러오기

7.2.hello.c를 hello.exe로 만들기
7.3.hello.exe가 만들어졌나 확인하기


8. 윈도우용 볼랜드C++로 짜보는 첫 번째 프로그램 hello.c
8.1.윈98에서 bcw.exe를 실행하고 hello.c 파일 불러오기

8.2.hello.c 파일을 hello.exe 파일로 만들기
8.3.오류나 경고가 발생했을 때 나타나는 창

8.4.hello.exe 파일을 찾아서 실행해보기


9.'비주얼C++ 6.0'으로 짜보는 첫 번째 프로그램 hello.c
9.1.'비주얼C++ 6.0'을 실행한 뒤에 hello.c 만들기
9.2.hello.c를
불러와 hello.exe로 만들기
9.3.비주얼C++로 만든 hello.exe 실행하기


10. 내 이름이 나오는 실행 파일 만들기
10.1.터보C로 내 이름이 나오는 실행 파일 만들기
10.2.도스용 볼랜드C++(BC)에서
다른 이름으로 저장하기
10.3.내 이름이 나오는 윈도용 실행 파일 만들기


11.컴파일러의 도움말과 오류 처리
11.1.터보C의 도움말 보기
11.2.볼랜드C++의 도움말 보기
11.3.경고와
오류의 종류, 문제 해결
11.4.경고와 오류 해결하기(디버깅)


12. C언어의 기본 문법

12.1. 소스 파일과 기본문법
12.2.한글이나 영어로 주석문 달기
12.2.1.주석문의 용도

12.2.2.주석문과 명령문의 표기 방법
12.2.3.주석문의 내포와 중첩 관계
12.3.한글 문장이 출력되는
프로그램 만들기
12.4.토큰의 종류 - 키워드, 구두점, 공백문자, 이름 등
12.4.1.토큰(token)의
종류와 공백문자
12.4.2.키워드(keyword)
12.4.3.공백문자(whitespace)와 빈칸문자의
차이
12.4.4.구두점(punctuator)
12.4.5.이름(name, identifier)

12.4.6.상수(constant), 연산자(operator), 문자열(string literal)
12.5.명령문과 문장,
수식
12.5.1.문장(statement)의 개념과 범위
12.5.2.문장과 수식의 차이


13.함수 이야기
13.1.함수란 무엇인가?
13.2.함수의 기본 구조
13.3.사용자정의 함수란
무엇인가?
13.4. 내장함수, 사용자정의함수, 라이브러리의 관계
13.5.함수에 사용하는 매개변수(=인수)의 용도

13.6.매개변수 사용법
13.7.되돌림값
13.7.1.함수로부터 돌려받는 되돌림값(return
value)이란?
13.7.2.되돌림값을 사용한 함수 응용
13.8.함수 선언와 함수 정의

13.8.1.되돌림값이 없는 함수에 사용하는 void 키워드
13.8.2.함수 선언 방법
13.8.3.함수
정의와 함수 선언의 차이
13.9.함수 원형과 함수 선언, 함수 정의의 관계
13.9.1.함수의 선언을 겸한 함수
정의
13.9.2.함수 원형의 형식과 용도
13.9.3.함수 실행과 함수 호출
13.10.헤더
파일과 #include 명령
13.10.1.헤더 파일의 용도
13.10.2.#include문의 용법과
<> "" 기호의 차이
13.10.3.사용자정의 헤더 파일
13.11.getch() 함수와
conio.h 파일의 관계
13.11.1.getch()로 키 입력 때까지 멈추게 만들기

13.11.2.getch() 함수를 사용하기 위한 conio.h 헤더 파일의 추가


14.상수와 변수, 자료형

14.1. 변수와 상수의 의미, 역할
14.1.1.변수와 상수의 차이
14.1.2.scanf() 함수의
사용법과 숫자 입력받기
14.1.3.대입의 의미와 대입 연산자(=)의 역할
14.1.4.입력받은 숫자의
네제곱수 구하기
14.2.자료형의 종류와 자료형 키워드
14.3. 정수형
14.3.1.정수형의 의미

14.3.2.오버플로우와 언더플로우
14.4. 실수형
14.5. 문자형
14.6.기타
자료형
14.6.1. 열거형(Enumerated type)
14.6.2.void형
14.7.숫자
1과 문자 1은 어떻게 다른가?
14.8.단위사
14.9.상수의 자료 표기 방법


15.변수
15.1.변수를 선언하고 값을 대입해야 하는 이유
15.2. 변수 선언 규칙

15.3.변수의 정의, 초기화, 대입
15.4. 변수가 차지하는 크기
15.5.변수 사용할 때 주의할 점

15.6. 변수와 상수의 관계

16. 변수와 기억 장소

16.1. 지역 변수와 전역 변수
16.2. 기억
장소의 선언방법
16.3. 자동 변수
16.4. 외부 변수
16.5. 내부정적 변수

16.6. 외부정적 변수
16.7. 정적 함수
16.8. 레지스터 변수


17.printf(), scanf() 함수와 특수 기호 사용법
17.1.printf() 함수 사용법
17.2.scanf() 함수를
이용해 자료 입력받기
17.3.줄바꿈문자 \n의 의미
17.4.ESC따름부호(\ 기호)

17.4.1.ESC따름부호와 ESC문자열의 종류
17.4.2.8진수와 16진수를 이용한 문자 상수 표기법

17.5.대체문자 % 기호의 종류와 의미
17.6. 자료형의 변환과 캐스트 연산자
17.7.함수에 매개변수 입력하는
요령
17.8.쉼표를 이용해 여러 개의 매개변수 사용하기
17.9.printf() 함수로 자료 출력할 때 자릿수
조정하기


18. 연산자

18.1.연산자의 의미와 연산 순서
18.1.1.연산자가 하는 일

18.1.2.연산자의 우선 순위와 결합 방향
18.2. 연산자의 분류
18.2.1.연산자 수에
의한 분류
18.2.2.연산자의 기능에 따른 분류
18.3.산술 연산자 + - * / %608

18.4.대입 연산자 = += -= *= /= %=
18.5. 부호 연산자 + -
18.6.증감 연산자
++ --
18.7.관계 연산자 < <= > >= == !=
18.8.논리
연산자 ! &&
18.9. 조건 연산자 ?:
18.10.쉼표 연산자 ,

18.11.비트 연산자, 밀기 연산자 ~& ^ << >>
18.11.1.비트
연산자
18.11.2.밀기 연산자
18.12.캐스트 연산자 ()
18.13.sizeof 연산자

18.14.기타 연산자
18.14.1.번지 연산자 &
18.14.2.간접 연산자
*
18.14.3.으뜸 연산자
18.15.연산자 쓸 때 주의할 점
18.15.1.산술 변환
규칙에 대한 주의
18.15.2.부호 변환에 대한 주의
18.15.3.애매모호한 규칙에 대한 주의

19.제어문

19.1.프로그램을 제어하는 제어문의 의미와 역할
19.1.1.제어문을 이용하여 1부터 10까지 더하기

19.1.2.다른 제어문을 이용하여 1부터 10까지 더하기
19.1.3.제어문의 종류
19.2.if문

19.2.1.'만약'이라는 가정을 활용하는 조건문인 if문
19.2.2.if문을 이용한 홀수 짝수 판별

19.2.3.if else문을 이용한 홀짝 여부 판단
19.2.4.if문과 블록 명령
19.2.5.if,
else if, else를 활용한 배수 판별
19.2.6.if문의 중첩 활용하기
19.2.7.if문과 조건
연산자의 용법 비교
19.3. while문
19.3.1.조건이 만족할 때까지 반복하는 while 제어문

19.3.2.맴돌이(loop) 빠져 나오기
19.3.3.while문의 조건식과 맴돌이 관계

19.3.4.특정 키 입력 때까지 반복하기
19.4. do while문
19.4.1.~인 동안 ~을 해라(do
while)
19.4.2.do while문의 조건식과 맴돌이 관계
19.5. for문

19.5.1.for문의 사용 형식
19.5.2.for문의 구조와 특징
19.5.3.for문의 효용성

19.6. switch문
19.6.1.여러 개 중에서 하나를 고르는 switch문

19.6.2.switch문의 특징
19.7. 무한 맴돌이와 맴돌이를 탈출하는 방법
19.8. 맴돌이를 중첩해서 활용하는
방법
19.9.탈출문, 이동문
19.9.1.제어문 블록을 벗어나는 탈출문인 break문

19.9.2.반복순환문의 조건식으로 되돌아가는 continue문
19.9.3. 가고 싶은 곳으로 이동시켜주는 goto문

20. 선행처리기 명령어와 헤더 파일
20.1.선행처리기가 하는 일
20.2. #include

20.3. #define, #undef
20.4. #if, #ifdef, #else, #elif, #endif

20.5. typedef
20.6. #line, #error, #pragma
20.7. ##
20.8.
선행처리기 명령어(매크로 명령어) 사용 때 주의할 점


21.
배열

21.1. 배열의 의미
21.2. 배열의 선언와 정의

21.3.일차원 배열과 다차원 배열의 차이
21.4. 문자열 상수와 문자배열 상수

22. 번지 연산자와 포인터
22.1. 번지를 알려주는
번지 연산자 &
22.2. 간접 연산자 * 와 포인터
22.3. 번지에 의한 참조와 값에 의한 참조의 차이

22.4. 포인터에 대한 내용들



[부록] 23.C언어 관련 주요 질문과 답변


[부록] 24. C언어 함수 요약
24.1.터보C 2.0 함수 요약(가나다 순)
24.2.볼랜드C++ 3.1 함수
목록(가나다순)



31. 함수에
관한 문법


31.1. main() 함수에 대하여

31.2. 함수에 관한 규칙과 관례
31.3. 근거리함수 원거리함수 거대함수에 대하여

32. 메모리 관리와 함수
32.1. 메모리 모델에 대하여
32.1.1.초소형 모델(tiny model)

32.1.2.소형 모델(small model)
32.1.3.중형 모델(medium model)

32.1.4.중소형 모델(compact model)
32.1.5.대형 모델(large model)

32.1.6.거대 모델(huge model)
32.2. 주소 또는 번지

32.3. 선입선출과 후입선출의 차이
32.4. 코드, 데이터, 스택, 힙, 큐, 데크의 의미와 차이


33. 프로젝트와 라이브러리
33.1. 프로젝트파일(prj) 이용하기

35. 배열과 포인터

35.1. 배열 사용방법

35.1.1.배열과 포인터에 대한 복습

35.1.2.외부배열, 정적배열, 자동배열의 차이와 선언 방법
35.1.3.배열 초기화와 대입의 차이

35.1.4.다차원 배열 선언 방법
35.1.5.배열의 크기 생략과 배열 크기 알아내기


35.2. 배열과 포인터의 관계

35.2.1. 포인터
변수에 다른 자료형을 붙여 선언하는 이유

52. 텍스트 프로그램 예제

52.1. 반올림 함수 만들기
52.2. 커서를 안 보이게
52.3.
도레미파솔라시도 만드는 함수
52.4. shell.c = 가장 단순한 도스나들이 기능
52.5. dosver.c =
도스 버전을 알고 싶을 때
52.6. copystr.c = 입력받은 문자를 다시 보여줌
52.7. typefile.c
= 간단한 문서파일 내용을 보여줍니다.
52.8. list.c = 파일의 내용을 보여줍니다
52.9.
copyfile.c = 텍스트파일을 복사하는 파일복사 프로그램.
52.10. att.c = 파일의 속성을 바꿉니다

52.11. ff.c = 파일을 찾아줍니다
52.12. calendar.c = 만년 달력
52.13.
cpuspeed.c = CPU 속도를 측정
52.14. fall.c = 바이러스처럼 글씨가 떨어지는 램 상주 프로그램


IT문화원 강좌. 2005년 11월 03일
[갈래: c] URL: http://www.dal.kr/chair/c/c.html


댓글 없음:

댓글 쓰기