다시 오신 걸 환영해요
네 이번 강의에서는 C 표준 라이브러리가 제공하는 유틸리티
기능에 관해 얘기해 볼게요
네 몇 가지 일반 함수, 다양한
것들을 할 수 있어요.
유틸리티 기능을 사용하려면 보통 기본 lib가 필요하죠 H요
헤더 파일을 포함하죠
몇 가지 함수는 유용한 함수예요
하나는 절대적인 복근이에요
논쟁을 불러일으켰죠
절대적 가치는 그걸 긍정적으로 바꾸죠
따라서 네거티브 액수를 통과시키면 양극
값을 반환하죠
출구라는 기능이 있어요
주요 기능에 사용했어요
정수를 가져옵니다 보통 반환 값인 정수를 가져옵니다 보통
음수는 오류가 있다는 것을 의미하죠 양극이나 0은 오류가 없다는 뜻이고 1은
오류가 없다는 뜻입니다
이러면 프로그램이 종료돼요
바로 튀어나올 거예요
메인 함수를 사용하고 있다면 return을 할 수 있어요 메인 함수에서
return 할 수 있죠
퇴장하면 프로그램이 종료돼요
네 네 정의된 상수도 있습니다 종료 성공과 실패 같은
거죠 숫자를 사용하기 싫을 때 사용할 수 있는 거예요
혼자 있을 때 기억해야 할 다른 관련
사항은 출구에서 꼭 기억하세요
이런 건 C 프로그램에서 보실 수 있어요, 특히 중단이요
네 중단 중단은 일종의 오류가 발생했을 때예요 초저주파 신호가
안 잡히면 중단 명령을 내려 신호를 설정할 수 있죠
앱오프티스의 장점은 신호에 따라 코어
파일을 생성한다는 거죠
더 자세한 정보는 코어 파일에 있어요
하지만 out abort와 atexit 매우 유용한 함수는 보통 치명적인 오류가
있을 때 발동되죠
환경 오작동이 있어서 환경 변수를 읽을
수 있어요
환경 변수는 보통 환경과 함께 이동하죠
네 사용할 수 있는 변수죠
일종의 전역 변수로 운영 체제 어디서든 사용할 수 있죠
Linux라면 경로를 위해 anenvironment variable이 있죠
네 윈도우에는 경로를 지정하기 위한 환경 변수가 있습니다 혹은 프로그램이
위치하는 곳에 있습니다 혹은 일반적인 전역 변수가 있죠
네 환경 변수를 설정하면 이 함수를 이용해 읽을 수 있습니다
환경 가져오기요
그environment 변수에서 읽을 수 있고 여러분 프로그램에서
사용할 수 있어요
네 다시 한 번 Path 같은 거요 여러분의 조개껍데기나
환경과 관련된 모든 것이죠
환경 확보는 아주 유용해요
쿼저트 기능이 있어요
void 포인터 배열로 포인트에 도달한 데이터를 정렬하죠
호환성이 첫 매개 변수인 배열이 있는데 그걸
정렬할 거예요
태풍에 N 요소가 있을 거예요 각 크기에 따라 이빨 길이가 달라지겠죠
t 타입의 n과 크기도요
이 함수에는 4가지 변수가 있어요
하지만 qort는 정렬할 수 있어서 좋아요
네 번째 인수는 정렬에 사용할 함수에 대한
인포인터죠
더 복잡해질 수 있어요
하지만 이 함수는 배열된 두 요소를 비교해야
할 때 아주 유용해요
비교하고 싶은 요소를 포인터토로 전달할
수 있어요
임의 함수가 있어요
랜드에 도전할 때 이걸 써요
이게 난수를 생성할 거예요
네 다른 함수를 원하면 seed를 지정할 수도 있고 그냥
임의의 숫자를 생성할 수도 있어요 최소 값 3,276과 최소 값 0 사이에요 임의
최대 가치: 3276...
랜드 맥스는 표준 해방 운동으로 정의돼요 H요
스란기능 때문에 씨앗을 심을 수 있어요
씨앗은 일정한 범위를 제공할 수 있어요
그럼 숫자도 더 무작위로 나오겠죠
무작위 숫자 생성기를 미등록 인트로 보내죠
시스템 호출을 실행하는 기능이죠
수업 중에 정지할 때 사용했어요
네 콘솔에서 실행할 수 있는 모든 것 디렉토리 변경 권한
변경 다른 프로그램을 실행하는 Linux에서 이 모든 걸 시스템으로
할 수 있어요
여러분 셸에서 명령을 실행할 겁니다 DoS 프롬프트든
Linux에서 셸을 사용하든 간에요
그 명령을 실행할 거예요
네 그래서 예를 들어 시스템 메이킹 dir이라고 하면 dir을 만들
인수에 지정된 어떤 것이든 디렉터리를 생성해요
이중문자 안에 다 있어요 줄로 연결하면 되죠
시스템도 아주 유용하고요
assert library는 디버깅에 유용해요.
assert에 대해 이야기 할 기회가 없었는데 아주 짧게
이야기 하고 싶어요.
assert에 있는 라이브러리에요. 디버깅을 돕는 거죠
어소트는 뭔가 참이라고 말하는 거예요
네 그래서 코드 안에 뭔가 참인지 확인하기 위해 어설트를 넣을
수 있어요 코드 다음 줄로 넘어가기 전에요
네 네 여러분이 사용할 assert macro가 있는데 내부
표현 같은 인수를 취합니다.
네 식이 거짓으로 평가되면 assert macro는 표준 오류
스트림에 오류 메시지를 작성하고 중단 함수를 호출해요
프로그래머는 종료시키세요
코드에 이런 걸 입력할
수 있어요
z는 tx 곱하기 x 빼기 x 곱하기 y라고 하면 돼요
그런 다음 0보다 크거나 같은 걸 입력할 수 있어요
거짓으로 반환되면 프로그래밍이 종료되죠
안 그러면 코드 다음 줄을 실행할 거예요
코드를 통틀어 trueassumptions을 만드는 것과 같죠
다음 단계로 넘어가기 전에 가치가 제대로인지
확인해야죠
네 이건 근본적으로 0으로 나누지 않도록 하는
거죠 곱셈을 할 땐 0 값이 없었어요
디버깅을 위한 c 프로그램 안에서 assert도 볼 수 있어요.
여러분이 살펴보고 싶은 다른 유용한 헤더 파일입니다, 시간이죠 H요
시간 됐어요 다양한 날짜와 시간을 나타내는 온갖 기능과
거시기가 있어요
보통은 타임 T 구조를 리턴하죠
날짜는 알 수 있어요
시간을 벌 수 있어요
에르노예요 h나 에러넘버요 H요
마크로 오류 보고를 정의하죠
종종 베터 디버깅과 특정 에러를 보고하는
데 사용되죠
표준 라이브러리에선 많은 기능이 사용되죠
실패할 경우 특정 오류에 대해 특정 번호를 반환할 수 있어요 소켓 함수나 다른 것들을 사용할
때 더 중요한 것은 다양한 에러가 있을 수 있기
때문입니다
네 그냥 오류가 있다고 하는 것보다
어떻게 된 건지 아는 게 유용할 때가 있어요 특정 유형의 오류는
아주 유용합니다
따라서 오류 숫자 처리도 발생할 수 있습니다 더 많은 디버깅을
돕기 위해서요
로케일요 H요
네 이 헤더 안에 다양한 기능과 매크로스가
있어서 다양한 통화 단위를 포맷할 수 있어요
신호예요 H요
프로그램 종료 시 다양한 신호를 생성할 때
유용하죠
네 신호는 우리가 상세히 다루는 주제는 아니지만
중단 명령을 내릴 때 유용할 수 있어요 프로그램 종료 시 특정 신호를
지정할 때요
오해의 소지가 있다면 이걸 코어 파일에도
사용할 수 있어요
못됐네요 H요
네 이건 함수에 다양한 인수가 전달되는 다양한 시설을
정의합니다 varargs죠
vargs와 printf를 쓰지만 arg의 고유 함수를 생성하진 않아요
좀 더 고급 주제죠
이건 기본적인 헤더 파일이에요 시간, 오류 번호 등등을 얻는
데 유용한 것들이죠
다 좋은 기능이에요
도움이 됐으면 좋겠네요
고마워요