- ... 주소0.1
- 첫 판에서 썼던
e-mail 주소인 progman@pcrc.hongik.ac.kr은 더이상 쓰지 않습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... BBS0.2
- Korean Linux Documentation Project,
http://bbs.kldp.org/
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
KTUG0.3
- Korean TeX Users Group, http://www.ktug.or.kr/
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 확장1.1
- sign-extension
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 맞추려고1.2
- conforming
to externally imposed storage layouts
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... `pun1.3
- 발음은 같으나 뜻이 다른 말
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 있습니다.1.4
- 이러한 염려는, public symbol 뿐만 아니라,
시스템이 내부적으로 사용하는 internal, private symbol에도
해당합니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 변수1.5
- 즉, static이 아닌 변수를 의미함.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 선언1.6
- implicit external function
declaration
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 합니다.2.1
- C++ 언어에서는
이 두가지 방식이 차이가 없습니다. 몇몇 C++ 컴파일러는 C와 호환을 위해
C 언어처럼 동작합니다. C++에서는 구조체 tag는 자동으로 typedef 이름으로
선언됩니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 좋습니다.2.2
- 그러나, 큰 구조체를 함수의 인자로
전달하는 것은 효율성이 매우 떨어집니다. (질문
2.9 참고)
따라서 이 구조체에 대한 포인터를 쓰는 것이 (물론 pass-by-value의
의미가 필요없다는 전제 아래에서) 훨씬 바람직합니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 아닙니다.3.1
- 만약 함수 호출에서 쓰이는 콤마가 콤마 연산자라면,
하나 이상의 인자를 받는 함수를 만드는 게 불가능해집니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 포인터5.1
- uninitialized pointer
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 수식5.2
- integral
constant expression with the value 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 리스트5.3
- variable length argument list
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 있습니다5.4
- Because of the special assignment properties of
void * pointers, the initialization FILE *fp = NULL;
is valud if NULL is defined as ((void *)0).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 동작합니다5.5
- Using (void *)0,
in the guise of NULL, instead of (char *)0 happens
to work only because of a special guarantee about the
representations of void * and char * pointers.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 05.6
- More precisely, a null
pointer constant is an integer constant expression with the value 0,
possibly cast to void *.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 사용합니다5.7
- To be very,
very precise, the word “null” as a noun means only sense 5, and
“NULL” means only sense 4; the other usages all use “null”
as an adjective, as does the (unrelated) term “null statement.”
These are admittedly fine points
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 수도6.1
- Don't interpret “anywhere”
and “nowhere” too broadly. To be valid, a pointer must point to
properly allocated memory (see questions
7.1,
7.2, and
7.3); to
point definitively nowhere, a pointer must be a null pointer
(see question
5.1).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 때6.2
- By “string literal initializer for a character array,”
we include also wide string literals for arrays of wchar_t.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 있습니다.6.3
- Strictly speaking, the [] operator is
always applied to a pointer; see question
6.10 item 2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 때문에6.4
- Since arrays decay immediately into pointers,
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 표현입니다.6.5
- The original definition of “lvalue” did
have to do with the left-hand side of assignment statements.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 성립합니다.6.6
- The commutativity is of the
array-subscripting operator [] itself; obviously, a[i][j] is in
general different from a[j][i].
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 변환된다면6.7
- Since array references decay into pointers
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... arrays6.8
- This discussion also applies to three- or more
dimensional arrays.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 배열6.9
- Strictly speaking,
these aren't arrays but rather objects to be used like arrays;
see also question
6.14
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 불가능하다면6.10
- Note, however, that double indirection is not
necessarily any less efficient than multiplicative indexing
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
array3[i * ncolumns + j]
라고6.11
- A macro such as
#define Arrayaccess(a, i, j) ((a)[(i) * ncolumns + (j)])
could hide the explicit calculation. Invoking that macro, however,
would require parentheses and commas that wouldn't look exactly
like conventional C multidimensional array syntax, and the macro
would need access to at least one of the dimensions, as well.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 포인터6.12
- a pointer to a pointer
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 변수7.1
- uninitialized local variable
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 흔합니다.7.2
- 또
자주 발생하는 다른 버그로, malloc(strlen(s + 1))로 쓰는 경우와
p = malloc(sizeof(p))를 쓰는 경우가 있습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 늘리는데7.3
- 또는 항상
크기를 줄이는데에만 쓰이는 것도 아닙니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 유지됩니다.7.4
- 그러나 어떤, ANSI 이전의
컴파일러에서는 realloc이 실패했을 경우, 인자로 전달되었던 메모리
블럭의 보존 여부를 보장하지 않습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 있습니다.8.1
- 전문 용어로, 8 bit로
표현되는 바이트를 “octet”이라고 합니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 있습니다.9.1
- Bitfield를
쓰면 더 공간을 절약할 가능성이 있습니다. 질문
2.26 참고.
이 경우, unsigned 타입의 bitfield가 필요합니다. 1-bit로 된 signed
타입 bitfield는 호환성을 보장하면서 +1의 값을 저장할 수 없습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...bool9.2
- 이미 C++ 언어는 boolean 타입으로
bool이라는 키워드를 제공하기 때문에, 주의가 필요합니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... gobbledygook10.1
- 은어, 특수어,
전문용어, 특수한 계층의 사람들만 쓰는 용어 (경멸적으로 쓰임)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 넘는다면10.2
- C 표준은, 컴파일러가
이름을 비교할 때, 31글자 다음의 글자들을 비교해야 한다고
강요하지 않습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 테스트10.3
- “dead” test
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 일10.4
- branches on the constant
condition 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... ISO11.1
- International Organization
for Standardization
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 국제화(internationalization11.2
- 이 단어가 너무 길기 때문에
보통 i18n으로 부르기도 합니다. 여기에서 18은 이 단어의 총 글자
수입니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 깨끗합니다.11.3
- Changing a parameter's type
may require additional changes if the address of that parameter
is taken and must have aparticular type
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 않습니다.11.4
- C++ 언어는 const가 붙은 포인터에
대해 좀 더 복잡한 규칙을 쓰며, 이 규칙은 좀 더 다양한 꼴의 대입을
허용하지만, 이와 같이 const가 붙은 오브젝트를 변경하는 것은
막아 줍니다. C++에서도 const char **가 올 곳에 char **를
대입하는 것은 허용되지 않지만, const char * const *가
올 곳에 char **를 쓰는 것은 허용됩니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 않았습니다.11.5
- C++ 언어에서는 main을 재귀적으로 부를 수
없으며, main의 주소를 얻는 것도 금지되어 있습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 의존적11.6
- implementation-defined
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 않습니다11.7
- In no case does the Standard impose requirements
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 있습니다.11.8
- However, if an implementation provides integer
types with width of 8, 16, 32, or 64 bits, it shall define the
corresponding typedef names.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 있는11.9
- 표준에 따라, 모든 경우에
가장 빠르게 동작하는 것을 보장하지 않습니다. 만약 시스템이
어느 경우 가장 빠르게 동작하는 타입인 것을 선택할 수 없다면,
단순히 부호있음/없음과 크기만을 만족하는 타입을 쓸 수도 있다는
것을 명심하기 바랍니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 라이브러리12.1
- 우리가 “stdio library”라고 말할 때는
“C 런타임 라이브러리안에 있는 stdio 함수들”이나 stdio.h에
설명된 함수들을 의미합니다.”
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...
찾기(seeking12.2
- 원하는 내용을 읽거나 쓸 수 있도록 file position을
옮긴다는 뜻
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 버립니다.12.3
- 앞 절에서 쓴 것처럼, 255는 char가
8 비트라는 것을 가정한 것입니다. char가 8 비트보다 더 큰
시스템에서는, 비슷하게 처리가 끝나버릴 수 있습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 원한다면12.4
- 다른 방법으로,
setbuf()나 setvbuf()를 써서 버퍼링을 쓰지 않은 방법이
있지만, 버퍼링을 사용하지 않으면 성능이 떨어질 가능성이 높으므로
그리 좋다고 할 수 없습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 사실입니다.12.5
- printf의 %e와 %g,
그리고 각각 같은 뜻을 가지는 scanf의 %le와 %lg에
대해서도 같습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 인자12.6
- Default argument promotion은
가변 인자 리스트에서 가변 인자 부분에만 적용됩니다.
Chapter 15 참고 바랍니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 뿐입니다.12.7
-
The only thing printf() does in response to a
custom locale setting is to change its decimal-point character
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 씁니다.12.8
- 여기에서
말한 것은 %e와 %f, 비슷한 format인 %le와
%lg에도 적용됩니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 있더군요.12.9
- 여러분이 control-C키를
쓸 수 있거나 리부팅할 의사가 있을 때에만 이 코드를 실행해보기
바랍니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 않는다고12.10
- 여러분이
%20s와 같이 폭을 지정한다면 문제가 해결될 수도 있습니다.
질문
12.15를 참고하기 바랍니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 때문입니다.12.11
- It's so easy to
regain control, restart the scan, discard the input if it didn't
match, etc.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 것12.12
- over-conservative
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 됩니다.12.13
- gets()의 단점을 논할때,
1988년 “Internet worm”에 대한 것을 빼 놓을 수 없습니다 --
이 `worm'은 UNIX finger daemon이 gets()를 쓴다는 것을 이용,
gets()의 버퍼를 overflow시켜서, 함수의 return address를 바꾸어
코드의 흐름이 다른 곳으로 가도록 만들어 버립니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 위해12.14
- OS가 한번에 들어오는
키보드 입력의 최대 크기를 제한한다고 생각할 수도 있지만,
표준 입력이 redirect된 파일에서 들어올 수도 있습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 완료시킨다는12.15
- To complete the writing of buffered characters
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 포인터12.16
- a
pointer to pointer to FILE
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 있습니다12.17
- overwriting in text mode may truncate the file
at that point
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 돌려줍니다.12.18
- 어떤 시스템은
text file을 space로 구분되는(space-padded) record로 저장합니다.
이러한 시스템에서 text mode로 한 줄을 읽을 때에는 뒤따라는
공백 문자(trailing space)들을 없앨 필요가 있습니다. 따라서
프로그램에서 여러 공백 문자를 썼다고 해도, 기록되지 않을 수도
있습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... “문자열”13.1
- 예를 들어, 초창기 C 컴파일러와 링커는
내부적으로 처리하는 심볼 테이블에 8개의 글자를 갖는 고정된 문자열을
썼습니다. 지금도 어떤 버전의 UNIX는 14개의 글자를 갖는 고정된
문자열을 쓰기도 합니다. strncpy는 이런 문자열을 위해, 짧은
문자열을 복사할 때, 남아있는 공간을 '
0'으로 채워줍니다.
따라서 이런 형태의 문자열을 비교할 때, 좀 더 효과적으로 처리할 수
있습니다. 왜냐하면, '
0'을 찾은 계산 대신, 아무 생각 없이
n개의 바이트를 비교하면 되기 때문입니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 같습니다13.2
- ANSI 표준에 따르면
time 함수는 실패할 수 있으며, 이 때 (time_t)(-1)을
리턴합니다
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 바랍니다.13.3
- 이런 식의 인터페이스를
쓰는 이유는, 초창기 C 언어에서 long 데이터 타입이 나오기 전에
두 개의 int로 이루어진 배열을 써서 time 값을 저장했습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... BC13.4
- 좀 더 정확히 말해,
그 날짜 GMT 정오부터입니다. 여기서 말하는 Julian day number는
데이터 프로세싱에 쓰이는 “Julian dates”와 아무런 상관이 없습니다.
그리고 이 둘 다 모두 “Julian calendar”와 아무 상관없습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 있습니다14.1
- although non-IEEE-aware compilers
may optimize the test away
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 복소수14.2
- complex number
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... arguments.15.1
- 정해지지 않은 갯수의 인자를
가지는
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 없습니다.)15.2
- 이 확장이
올바르려면 다음과 같아야 합니다:
(*(int (**)())(((argp) += sizeof(int (*)())) - sizeof(int (*)())))
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... variables16.1
- 특히, stack-based
시스템에서는, 초기화되지 않는 변수의 실제 값은, 그 당시 stack에 어떠한 값이
있었느냐에 따라 달라집니다. 그렇기 때문에, 코드의 중간 중간 디버깅을 위해
출력 문장을 넣었을 때, 동작할 수도 있습니다. 즉, printf와 같은,
코드의 덩치가 큰 함수를 실행하면, 스택에 있는 값들이 매우 달라질 수 있기
때문입니다. Note 여기에서 말한 스택에 있는 값이란, 스택에 올바른 연산으로
쌓여 있는 값이 아니라, 빈 스택에 있는 쓰레기 값을 의미합니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ...core16.2
- Yes, the name “core” derives ultimately from old
ferrite core memories.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... GPL18.1
- GNU General Public License
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 프로세싱19.1
- batch-oriented mainframe
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 글자씩19.2
- character-at-a-time
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... baton19.3
- 작업 진행 표시기 --
-, /, |, 를
같은 위치에 번갈아 가며 출력.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 네터19.4
- netter, 뉴스 그룹을 사용하는 사람. `네티즌(netizen)'
정도로 해석하면 됩니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 이름19.5
- 원문은
pathname이지만 편의상 파일 이름으로 번역했음
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 배열19.6
- dynamically-allocated multidimensional arrays
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 포인터19.7
- pointers to pointers
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 배열19.8
- array of pointers
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 처리기19.9
- command langauge interpreter
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 변수19.10
- master copy
of the environment
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 목록19.11
- Ralf Brown's interrupt list
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... POSIX19.12
- IEEE 1003.1, [C89]/IEC 9945-1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... tradeoff20.1
- 흥정이라고 번역할 수도 있지만 원문의
느낌을 그대로 전달하기 위해 번역하지 않습니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... HLL20.2
- High Level
Language
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... 함수21.1
- 이 error 함수는 GNU software
소스 코드에서 얻은 것을 간략화한 것입니다.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... I18N21.2
- 18이란 숫자는,
`internationalization'이 열여덟 글자로 이루어졌기 때문에
붙었습니다
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.