2~4교시 저수준 입출력
P11-9.c의 예제
결과>>
open("d1009..in", O_RDONLY)에서의
" "는 책을 포함하여 5가지 형태로 쓸수 있습니다.
1) const char *p
사용예제)
단점 : " "수정되지 않는 문자열이란 뜻인데 여기서 p는 코드영역 4바이트를 차지하게 됩니다
즉 메모리의 낭비가 발생합니다
2) char p[]
사용예제)
장점 : 원하는 배열의 부분에 다른 문자를 추가로 삽입 할 수 있습니다
예) p[8] = 'p'; d에다가 p를 넣게 되어 정수가 아닌 16진수 주소로 출력하게 됩니다
<<1~2번 종합예제>>
3)#define p
사용예제)
장점 : 일괄적으로 한번에 수정 할 수 있습니다 / 메모리의 낭비가 없습니다
4)컴파일전에 gcc -Dfile=\"d1009.in\" -o p11-9 p11-9.c
사용예제)
장점 : 외부에서 컴파일시 적용 할 수 있습니다 / 메모리의 낭비가 없습니다
\"1009.in\"서 \ \은 메타문자로 해석을 금지한다는 뜻을 가집니다
ex) #define TV 100
-DTV = 100
이 4가지와 책에 있는 방법 포함하여 5가지 방법이 있습니다.
/* read(infd,buffer,BUFFERSIZE) 설명 */
설명)) read(읽어올 대상, 넣을 주소(위치), 한번읽어들일 최대양512)
읽어올대상은 HDD를 뜻하고 넣을주소는 메모리(Memory)를 뜻합니다
한번 읽어들일 최대양 512
30<512<513
30 = 30개만 읽어들입니다
513 = 512개만 읽고 나머지는 버립니다
참고>>scanf와 gets는 제한이 없습니다 그래서 gets는 warning이 발생합니다!!
추가 참고
저수준 입력 방식에서는
stdin 0
stdout 1
stderr 2
을 기본적으로 차지하고 있습니다
위 소스의 infd와 buffer을 차례대로 printf로 출력해보면
stderr의 다음인 3과 4가 나오는 것을 확인 할 수 있습니다
ex) infd : 3 buffer : 4
/* 리눅스 redirection 명령어 */
-redirection (>) 명령어의 결과를 화면에 출력하지 않고 file에 결과를 보냅니다
옵션
> : 새로운 file을 만들어라 , >>(append) : 기존의 file추가하라
ls -al > a.txt.
a.txt에다 ls -al의 명령으로 나타나는 글자를 넣어줍니다
tree > a.txt
a.txt에다 root 디렉토리 정보를 넣어줍니다
여기기까지는 표준출력(1)에 해당합니다
ls -al > a.txt 은 ls -al 1> a.txt과 동일합니다
gcc > a.txt 는 error 이고 화면에 출력되지 않습니다
이것은 표준에러(2)입니다
그리고 gcc 2> a.txt와 같습니다
redirection은 저수준 입력 방식처럼 숫자를 구별합니다(window Linux모두 해당)
/* 리눅스 grep(globally find regular-expression and print) 명령 */
지정된 파일내의 특정 문자나 단어를 검색하는 명령어로써 파일편집이나 특정 문자를 포함한 단어를 찾는데 매우 유용하게 사용되는 명령어입니다
사용방법 = grep[option][찾을문자][대상파일]
-v : 지정한 패턴과 일치하지 않는 것들을 보여줍니다
-n : 일치하는 라인의 결과와 그파일에서의 결과 라인이 몇 번재 라인인지 보여줍니다
-i : 대소문자의 구별을 하지 않습니다
-c : 일치하는 라인의 수를 보여줍니다
-r : 서브디렉토리까지 문자열을 찾습니다
5~6교시 수업
'코스웨어 > 11년 내장형하드웨어' 카테고리의 다른 글
[내장형]김수만_포스트에 C Code를 웹브라우저에서 보기 좋게 삽입하기 (6) | 2011.06.28 |
---|---|
[내장형]최남식-가입인사 (0) | 2011.06.28 |
[내장형]최성태_20110628 수업내용 (24) | 2011.06.28 |
[내장형]심재원-가입인사. (0) | 2011.06.28 |
[내장형]김정우 입니다. (0) | 2011.06.24 |
[내장형]윤병도 가입인사 (0) | 2011.06.24 |
[내장형]백길남 가입인사 드립니다. (0) | 2011.06.24 |
[내장형]윤병도_파일입출력(고수준,저수준),main함수의 인자 (6) | 2011.06.24 |