C 표준 라이브러리-퀵 가이드
그만큼 assert.h C 표준 라이브러리의 헤더 파일은 assert 프로그램에서 가정 한 내용을 확인하고이 가정이 거짓 인 경우 진단 메시지를 인쇄하는 데 사용할 수 있습니다.
정의 된 매크로 assert 다른 매크로를 참조 NDEBUG<assert.h>의 일부가 아닙니다. 소스 파일에서 NDEBUG가 매크로 이름으로 정의 된 경우 <assert.h>가 포함 된 지점에서assert 매크로는 다음과 같이 정의됩니다-
#define assert(ignore) ((void)0)
라이브러리 매크로
다음은 assert.h 헤더에 정의 된 유일한 기능입니다-
Sr. 아니. | 기능 및 설명 |
---|---|
1 | void assert (int 표현식) 이것은 실제로 C 프로그램에 진단을 추가하는 데 사용할 수있는 함수가 아니라 매크로입니다. |
그만큼 ctype.h C 표준 라이브러리의 헤더 파일은 문자를 테스트하고 매핑하는 데 유용한 여러 함수를 선언합니다.
모든 기능은 int 값이 EOF이거나 부호없는 문자로 표현 가능해야하는 매개 변수로.
모든 함수는 인수 c가 설명 된 조건을 충족하면 0이 아닌 (true)을 반환하고 그렇지 않으면 0 (false)을 반환합니다.
라이브러리 기능
다음은 헤더 ctype.h에 정의 된 함수입니다-
Sr. 아니. | 기능 및 설명 |
---|---|
1 | int isalnum (int c) 이 함수는 전달 된 문자가 영숫자인지 확인합니다. |
2 | int isalpha (int c) 이 함수는 전달 된 문자가 알파벳인지 확인합니다. |
삼 | int iscntrl (int c) 이 함수는 전달 된 문자가 제어 문자인지 확인합니다. |
4 | int isdigit (int c) 전달 된 문자가 10 진수인지 확인하는 기능입니다. |
5 | int isgraph (int c) 이 함수는 전달 된 문자가 로케일을 사용하여 그래픽 표현이 있는지 확인합니다. |
6 | int islower (int c) 이 함수는 전달 된 문자가 소문자인지 확인합니다. |
7 | int isprint (int c) 이 함수는 전달 된 문자가 인쇄 가능한지 여부를 확인합니다. |
8 | int ispunct (int c) 이 함수는 전달 된 문자가 구두점 문자인지 확인합니다. |
9 | int isspace (int c) 이 함수는 전달 된 문자가 공백인지 여부를 확인합니다. |
10 | int isupper (int c) 이 함수는 전달 된 문자가 대문자인지 확인합니다. |
11 | int isxdigit (int c) 이 함수는 전달 된 문자가 16 진수인지 확인합니다. |
라이브러리에는 "int"를 허용하고 반환하는 두 개의 변환 함수도 포함되어 있습니다.
Sr. 아니. | 기능 및 설명 |
---|---|
1 | int tolower (int c) 이 함수는 대문자를 소문자로 변환합니다. |
2 | int toupper (int c) 이 함수는 소문자를 대문자로 변환합니다. |
캐릭터 클래스
Sr. 아니. | 캐릭터 클래스 및 설명 |
---|---|
1 | Digits 이것은 정수 집합 {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}입니다. |
2 | Hexadecimal digits 이것은 {0 1 2 3 4 5 6 7 8 9 ABCDEF abcdef}의 집합입니다. |
삼 | Lowercase letters 소문자 세트 {abcdefghijklmnopqrstu vwxyz}입니다. |
4 | Uppercase letters 대문자 {ABCDEFGHIJKLMNOPQRSTU VWXYZ}의 집합입니다. |
5 | Letters 이것은 소문자와 대문자의 집합입니다. |
6 | Alphanumeric characters 이것은 숫자, 소문자 및 대문자의 집합입니다. |
7 | Punctuation characters 이것은 세트입니다! "# $ % & '() * +,-. / :; <=>? @ [\] ^ _`{|} ~ |
8 | Graphical characters 영숫자 및 구두점 문자 세트입니다. |
9 | Space characters 이것은 탭, 개행, 세로 탭, 용지 공급, 캐리지 리턴 및 공백의 집합입니다. |
10 | Printable characters 영숫자 문자, 구두점 문자 및 공백 문자 세트입니다. |
11 | Control characters ASCII에서 이러한 문자에는 000에서 037까지의 8 진수 코드 및 177 (DEL)이 있습니다. |
12 | Blank characters 이것은 공백과 탭입니다. |
13 | Alphabetic characters 소문자와 대문자의 집합입니다. |
그만큼 errno.h C 표준 라이브러리의 헤더 파일은 정수 변수를 정의합니다. errno, 오류 발생시 시스템 호출 및 일부 라이브러리 함수에 의해 설정되어 무엇이 잘못되었는지 나타냅니다. 이 매크로는 int 유형의 수정 가능한 lvalue로 확장되므로 프로그램에서 읽고 수정할 수 있습니다.
그만큼 errno프로그램 시작시 0으로 설정됩니다. 표준 C 라이브러리의 특정 함수는 일부 유형의 오류를 알리기 위해 값을 0이 아닌 값으로 수정합니다. 편의에 따라 값을 수정하거나 0으로 재설정 할 수도 있습니다.
그만큼 errno.h 헤더 파일은 또한 다른 오류 코드를 나타내는 매크로 목록을 정의합니다. 이는 유형이있는 정수 상수 표현식으로 확장됩니다. int.
라이브러리 매크로
다음은 헤더 errno.h에 정의 된 매크로입니다-
Sr. 아니. | 매크로 및 설명 |
---|---|
1 | extern int errno 이것은 오류가 발생한 경우 시스템 호출 및 일부 라이브러리 함수에 의해 설정된 매크로로 무엇이 잘못되었는지를 나타냅니다. |
2 | EDOM 도메인 오류 이 매크로는 입력 인수가 수학 함수가 정의되고 errno가 EDOM으로 설정된 도메인 외부에있는 경우 발생하는 도메인 오류를 나타냅니다. |
삼 | ERANGE 범위 오류 이 매크로는 입력 인수가 수학 함수가 정의되고 errno가 ERANGE로 설정된 범위를 벗어난 경우 발생하는 범위 오류를 나타냅니다. |
그만큼 float.hC 표준 라이브러리의 헤더 파일에는 부동 소수점 값과 관련된 다양한 플랫폼 종속 상수 세트가 포함되어 있습니다. 이러한 상수는 ANSI C에서 제안합니다.이 상수를 사용하면보다 이식 가능한 프로그램을 만들 수 있습니다. 모든 상수를 확인하기 전에 부동 소수점 숫자가 다음 네 가지 요소로 구성되어 있음을 이해하는 것이 좋습니다.
Sr. 아니. | 구성 요소 및 구성 요소 설명 |
---|---|
1 | S 기호 (+/-) |
2 | b 지수 표현의 기수 또는 기수, 2 진수 2, 10 진수 10, 16 진수 16 등 ... |
삼 | e 지수, 최소값 사이의 정수 emin 그리고 최대 emax. |
4 | p 정밀도, 유효 숫자의 기본 b 자릿수. |
위의 4 개 구성 요소를 기반으로 부동 소수점은 다음과 같은 값을 갖습니다.
floating-point = ( S ) p x be
or
floating-point = (+/-) precision x baseexponent
라이브러리 매크로
다음 값은 구현에 따라 다르며 #define 지시문으로 정의되지만 이러한 값은 여기에 제공된 값보다 낮을 수 없습니다. 모든 경우에 FLT는float, DBL은 double, LDBL은 long double.
Sr. 아니. | 매크로 및 설명 |
---|---|
1 | FLT_ROUNDS 부동 소수점 덧셈을위한 반올림 모드를 정의하며 다음 값 중 하나를 가질 수 있습니다.
|
2 | FLT_RADIX 2 이것은 지수의 기본 기수 표현을 정의합니다. 2 진법은 2 진, 10 진법은 일반 십진 표현, 16 진법은 16 진법입니다. |
삼 | FLT_MANT_DIG DBL_MANT_DIG LDBL_MANT_DIG 이 매크로는 숫자 (FLT_RADIX 기준)의 자릿수를 정의합니다. |
4 | FLT_DIG 6 DBL_DIG 10 LDBL_DIG 10 이 매크로는 반올림 후 변경하지 않고 표현할 수있는 최대 십진수 (밑수 10)를 정의합니다. |
5 | FLT_MIN_EXP DBL_MIN_EXP LDBL_MIN_EXP 이러한 매크로는 기본 FLT_RADIX의 지수에 대한 최소 음의 정수 값을 정의합니다. |
6 | FLT_MIN_10_EXP -37 DBL_MIN_10_EXP -37 LDBL_MIN_10_EXP -37 이 매크로는 10 진법의 지수에 대한 최소 음의 정수 값을 정의합니다. |
7 | FLT_MAX_EXP DBL_MAX_EXP LDBL_MAX_EXP 이러한 매크로는 기본 FLT_RADIX의 지수에 대한 최대 정수 값을 정의합니다. |
8 | FLT_MAX_10_EXP +37 DBL_MAX_10_EXP +37 LDBL_MAX_10_EXP +37 이러한 매크로는 10 진법의 지수에 대한 최대 정수 값을 정의합니다. |
9 | FLT_MAX 1E+37 DBL_MAX 1E+37 LDBL_MAX 1E+37 이러한 매크로는 최대 유한 부동 소수점 값을 정의합니다. |
10 | FLT_EPSILON 1E-5 DBL_EPSILON 1E-9 LDBL_EPSILON 1E-9 이러한 매크로는 표현 가능한 최하위 숫자를 정의합니다. |
11 | FLT_MIN 1E-37 DBL_MIN 1E-37 LDBL_MIN 1E-37 이러한 매크로는 최소 부동 소수점 값을 정의합니다. |
예
다음 예제는 float.h 파일에 정의 된 몇 가지 상수의 사용법을 보여줍니다.
#include <stdio.h>
#include <float.h>
int main () {
printf("The maximum value of float = %.10e\n", FLT_MAX);
printf("The minimum value of float = %.10e\n", FLT_MIN);
printf("The number of digits in the number = %.10e\n", FLT_MANT_DIG);
}
다음 결과를 생성하는 위의 프로그램을 컴파일하고 실행 해 보겠습니다.
The maximum value of float = 3.4028234664e+38
The minimum value of float = 1.1754943508e-38
The number of digits in the number = 7.2996655210e-312
그만큼 limits.h헤더는 다양한 변수 유형의 다양한 속성을 결정합니다. 이 헤더에 정의 된 매크로는 char, int 및 long과 같은 다양한 변수 유형의 값을 제한합니다.
이러한 제한은 변수가 이러한 제한을 초과하는 값을 저장할 수 없음을 지정합니다. 예를 들어 부호없는 문자는 최대 값 255까지 저장할 수 있습니다.
라이브러리 매크로
다음 값은 구현에 따라 다르며 #define 지시문으로 정의되지만 이러한 값은 여기에 제공된 값보다 낮을 수 없습니다.
매크로 | 값 | 기술 |
---|---|---|
CHAR_BIT | 8 | 바이트의 비트 수를 정의합니다. |
SCHAR_MIN | -128 | 부호있는 문자의 최소값을 정의합니다. |
SCHAR_MAX | +127 | 부호있는 문자의 최대 값을 정의합니다. |
UCHAR_MAX | 255 | 부호없는 문자의 최대 값을 정의합니다. |
CHAR_MIN | -128 | char 유형의 최소값을 정의하고 char이 음수 값을 나타내는 경우 해당 값은 SCHAR_MIN과 같고 그렇지 않으면 0입니다. |
CHAR_MAX | +127 | char 유형의 값을 정의하고 char이 음수 값을 나타내는 경우 해당 값은 SCHAR_MAX와 같고, 그렇지 않으면 UCHAR_MAX입니다. |
MB_LEN_MAX | 16 | 멀티 바이트 문자의 최대 바이트 수를 정의합니다. |
SHRT_MIN | -32768 | short int의 최소값을 정의합니다. |
SHRT_MAX | +32767 | short int의 최대 값을 정의합니다. |
USHRT_MAX | 65535 | unsigned short int의 최대 값을 정의합니다. |
INT_MIN | -2147483648 | int의 최소값을 정의합니다. |
INT_MAX | +2147483647 | int의 최대 값을 정의합니다. |
UINT_MAX | 4294967295 | unsigned int의 최대 값을 정의합니다. |
LONG_MIN | -9223372036854775808 | long int의 최소값을 정의합니다. |
LONG_MAX | +9223372036854775807 | long int의 최대 값을 정의합니다. |
ULONG_MAX | 18446744073709551615 | unsigned long int의 최대 값을 정의합니다. |
예
다음 예는에 정의 된 몇 가지 상수의 사용법을 보여줍니다. limits.h 파일.
#include <stdio.h>
#include <limits.h>
int main() {
printf("The number of bits in a byte %d\n", CHAR_BIT);
printf("The minimum value of SIGNED CHAR = %d\n", SCHAR_MIN);
printf("The maximum value of SIGNED CHAR = %d\n", SCHAR_MAX);
printf("The maximum value of UNSIGNED CHAR = %d\n", UCHAR_MAX);
printf("The minimum value of SHORT INT = %d\n", SHRT_MIN);
printf("The maximum value of SHORT INT = %d\n", SHRT_MAX);
printf("The minimum value of INT = %d\n", INT_MIN);
printf("The maximum value of INT = %d\n", INT_MAX);
printf("The minimum value of CHAR = %d\n", CHAR_MIN);
printf("The maximum value of CHAR = %d\n", CHAR_MAX);
printf("The minimum value of LONG = %ld\n", LONG_MIN);
printf("The maximum value of LONG = %ld\n", LONG_MAX);
return(0);
}
다음 결과를 생성하는 위의 프로그램을 컴파일하고 실행 해 보겠습니다.
The number of bits in a byte 8
The minimum value of SIGNED CHAR = -128
The maximum value of SIGNED CHAR = 127
The maximum value of UNSIGNED CHAR = 255
The minimum value of SHORT INT = -32768
The maximum value of SHORT INT = 32767
The minimum value of INT = -2147483648
The maximum value of INT = 2147483647
The minimum value of CHAR = -128
The maximum value of CHAR = 127
The minimum value of LONG = -9223372036854775808
The maximum value of LONG = 9223372036854775807
그만큼 locale.h헤더는 날짜 형식 및 통화 기호와 같은 위치 별 설정을 정의합니다. 중요한 구조와 함께 정의 된 여러 매크로를 찾을 수 있습니다.struct lconv 아래에 나열된 두 가지 중요한 기능이 있습니다.
라이브러리 매크로
다음은 헤더에 정의 된 매크로이며 이러한 매크로는 아래 나열된 두 가지 기능에서 사용됩니다.
Sr. 아니. | 매크로 및 설명 |
---|---|
1 | LC_ALL 모든 것을 설정합니다. |
2 | LC_COLLATE strcoll 및 strxfrm 함수에 영향을줍니다. |
삼 | LC_CTYPE 모든 캐릭터 기능에 영향을 미칩니다. |
4 | LC_MONETARY localeconv 함수에서 제공하는 통화 정보에 영향을줍니다. |
5 | LC_NUMERIC 소수점 형식 및 localeconv 함수에서 제공하는 정보에 영향을줍니다. |
6 | LC_TIME strftime 함수에 영향을줍니다. |
라이브러리 기능
다음은 헤더 locale.h에 정의 된 함수입니다-
Sr. 아니. | 기능 및 설명 |
---|---|
1 | char * setlocale (int 카테고리, const char * locale) 위치에 따른 정보를 설정하거나 읽습니다. |
2 | 구조체 lconv * localeconv (void) 위치에 따른 정보를 설정하거나 읽습니다. |
도서관 구조
typedef struct {
char *decimal_point;
char *thousands_sep;
char *grouping;
char *int_curr_symbol;
char *currency_symbol;
char *mon_decimal_point;
char *mon_thousands_sep;
char *mon_grouping;
char *positive_sign;
char *negative_sign;
char int_frac_digits;
char frac_digits;
char p_cs_precedes;
char p_sep_by_space;
char n_cs_precedes;
char n_sep_by_space;
char p_sign_posn;
char n_sign_posn;
} lconv
다음은 각 필드에 대한 설명입니다.
Sr. 아니. | 필드 및 설명 |
---|---|
1 | decimal_point 비 금전적 값에 사용되는 소수점 문자입니다. |
2 | thousands_sep 비 금전적 값에 사용되는 천 자리 구분 문자입니다. |
삼 | grouping 비 금전적 수량으로 각 자릿수 그룹의 크기를 나타내는 문자열입니다. 각 문자는 현재 그룹의 자릿수를 지정하는 정수 값을 나타냅니다. 0 값은 나머지 그룹에 이전 값이 사용됨을 의미합니다. |
4 | int_curr_symbol 사용 된 국제 통화 기호의 문자열입니다. 처음 세 문자는 ISO 4217 : 1987에 지정된 문자이고 네 번째 문자는 통화 기호와 통화 수량을 구분하는 문자입니다. |
5 | currency_symbol 통화에 사용되는 지역 기호입니다. |
6 | mon_decimal_point 화폐 가치에 사용되는 소수점 문자. |
7 | mon_thousands_sep 화폐 가치에 사용되는 천 자리 그룹화 문자입니다. |
8 | mon_grouping 요소가 화폐 값에서 숫자 그룹의 크기를 정의하는 문자열입니다. 각 문자는 현재 그룹의 자릿수를 지정하는 정수 값을 나타냅니다. 0 값은 나머지 그룹에 이전 값이 사용됨을 의미합니다. |
9 | positive_sign 양의 화폐 가치에 사용되는 문자입니다. |
10 | negative_sign 음수 금액에 사용되는 문자입니다. |
11 | int_frac_digits 국제 통화 값에서 소수점 뒤에 표시 할 자릿수입니다. |
12 | frac_digits 통화 값에서 소수점 뒤에 표시 할 자릿수입니다. |
13 | p_cs_precedes 1과 같으면 currency_symbol이 양의 통화 값 앞에 나타납니다. 0과 같으면 currency_symbol이 양의 통화 값 뒤에 나타납니다. |
14 | p_sep_by_space 1과 같으면 currency_symbol이 양의 통화 값과 공백으로 구분됩니다. 0과 같으면 currency_symbol과 양의 통화 값 사이에 공백이 없습니다. |
15 | n_cs_precedes 1과 같으면 currency_symbol이 음수 통화 값 앞에옵니다. 0과 같으면 currency_symbol이 음의 통화 값을 이어갑니다. |
16 | n_sep_by_space 1과 같으면 currency_symbol이 음수 통화 값과 공백으로 구분됩니다. 0과 같으면 currency_symbol과 음수 통화 값 사이에 공백이 없습니다. |
17 | p_sign_posn 양의 통화 값에서 positive_sign의 위치를 나타냅니다. |
18 | n_sign_posn 음수 통화 값에서 negative_sign의 위치를 나타냅니다. |
다음 값이 사용됩니다. p_sign_posn 과 n_sign_posn −
값 | 기술 |
---|---|
0 | 괄호는 값과 currency_symbol을 캡슐화합니다. |
1 | 기호는 value 및 currency_symbol 앞에 있습니다. |
2 | 부호는 값과 currency_symbol을 이어받습니다. |
삼 | 부호는 value 및 currency_symbol 바로 앞에 있습니다. |
4 | 부호는 값과 currency_symbol에 즉시 이어집니다. |
그만큼 math.h헤더는 다양한 수학 함수와 하나의 매크로를 정의합니다. 이 라이브러리에서 사용할 수있는 모든 기능은double 인수 및 반환 double 결과로서.
라이브러리 매크로
이 라이브러리에는 하나의 매크로 만 정의되어 있습니다.
Sr. 아니. | 매크로 및 설명 |
---|---|
1 | HUGE_VAL 이 매크로는 함수의 결과가 부동 소수점 숫자로 표현되지 않을 때 사용됩니다. 올바른 결과의 크기가 너무 커서 표현할 수없는 경우 함수는 범위 오류를 나타 내기 위해 errno를 ERANGE로 설정하고 매크로 HUGE_VAL 또는 그 부정 (-HUGE_VAL)에 의해 명명 된 매우 큰 특정 값을 반환합니다. 결과의 크기가 너무 작 으면 대신 0 값이 반환됩니다. 이 경우 errno는 ERANGE로 설정되거나 설정되지 않을 수 있습니다. |
라이브러리 기능
다음은 헤더 math.h에 정의 된 함수입니다-
Sr. 아니. | 기능 및 설명 |
---|---|
1 | double acos (double x) 라디안 단위의 x 아크 코사인을 반환합니다. |
2 | 더블 asin (더블 x) x의 아크 사인을 라디안으로 반환합니다. |
삼 | 더블 아탄 (더블 x) x의 아크 탄젠트를 라디안으로 반환합니다. |
4 | 더블 atan2 (더블 y, 더블 x) 올바른 사분면을 결정하기 위해 두 값의 부호를 기준으로 y / x 라디안 단위의 아크 탄젠트를 반환합니다. |
5 | double cos (이중 x) 라디안 각도 x의 코사인을 반환합니다. |
6 | 더블 코시 (더블 x) x의 쌍곡 코사인을 반환합니다. |
7 | 이중 죄 (double x) 라디안 각도 x의 사인을 반환합니다. |
8 | double sinh (이중 x) x의 쌍곡 사인을 반환합니다. |
9 | double tanh (더블 x) x의 쌍곡 탄젠트를 반환합니다. |
10 | double exp (double x) 값을 반환합니다. e x 제곱으로 올렸습니다. |
11 | double frexp (double x, int * exponent) 반환 된 값은 가수이고 지수가 가리키는 정수는 지수입니다. 결과 값은 x = 가수 * 2 ^ 지수입니다. |
12 | double ldexp (double x, int exponent) 보고 x 지수의 거듭 제곱으로 2를 곱합니다. |
13 | 이중 로그 (double x) 자연 로그 (base-e 로그)를 반환합니다. x. |
14 | double log10 (double x) 다음의 공통 로그 (밑이 10 인 로그)를 반환합니다. x. |
15 | double modf (double x, double * integer) 반환 된 값은 분수 구성 요소 (소수점 뒤의 부분)이며 정수를 정수 구성 요소로 설정합니다. |
16 | double pow (double x, double y) x의 제곱을 반환합니다. y. |
17 | 더블 sqrt (더블 x) 제곱근을 반환합니다. x. |
18 | 더블 셀 (더블 x) 다음보다 크거나 같은 가장 작은 정수 값을 반환합니다. x. |
19 | 더블 팹 (더블 x) 절대 값을 반환합니다. x. |
20 | 더블 플로어 (더블 x) 다음보다 작거나 같은 가장 큰 정수 값을 반환합니다. x. |
21 | double fmod (double x, double y) x의 나머지를 다음으로 나눈 값을 반환합니다. y. |
그만큼 setjmp.h 헤더는 매크로를 정의합니다. setjmp(), 하나의 기능 longjmp()및 하나의 변수 유형 jmp_buf, 일반 함수 호출을 우회하고 규율을 반환합니다.
라이브러리 변수
다음은 헤더 setjmp.h에 정의 된 변수 유형입니다-
Sr. 아니. | 변수 및 설명 |
---|---|
1 | jmp_buf 매크로에 대한 정보를 보유하는 데 사용되는 배열 유형입니다. setjmp() 및 기능 longjmp(). |
라이브러리 매크로
이 라이브러리에는 하나의 매크로 만 정의되어 있습니다.
Sr. 아니. | 매크로 및 설명 |
---|---|
1 | int setjmp (jmp_buf 환경) 이 매크로는 현재 환경 을 변수에 저장합니다.environment 나중에 함수에서 사용하기 위해 longjmp(). 이 매크로가 매크로 호출에서 직접 반환하면 0을 반환하지만longjmp() 함수를 호출하면 0이 아닌 값이 반환됩니다. |
라이브러리 기능
다음은 헤더 setjmp.h에 정의 된 유일한 함수입니다-
Sr. 아니. | 기능 및 설명 |
---|---|
1 | void longjmp (jmp_buf 환경, 정수 값) 이 기능은에 대한 가장 최근 호출로 저장된 환경을 복원합니다. setjmp() 해당하는 프로그램의 동일한 호출에서 매크로 jmp_buf 논의. |
그만큼 signal.h 헤더는 변수 유형을 정의합니다. sig_atomic_t, 두 개의 함수 호출 및 프로그램 실행 중에보고 된 서로 다른 신호를 처리하기위한 여러 매크로.
라이브러리 변수
다음은 헤더 신호에 정의 된 변수 유형입니다.
Sr. 아니. | 변수 및 설명 |
---|---|
1 | sig_atomic_t 이것은 int유형이며 신호 처리기에서 변수로 사용됩니다. 이것은 비동기 신호가있는 경우에도 원자 엔티티로 액세스 할 수있는 통합 유형의 객체입니다. |
라이브러리 매크로
다음은 signal.h 헤더에 정의 된 매크로이며 이러한 매크로는 아래 나열된 두 가지 기능에서 사용됩니다. 그만큼SIG_ 매크로는 신호 기능을 정의하기 위해 신호 기능과 함께 사용됩니다.
Sr. 아니. | 매크로 및 설명 |
---|---|
1 | SIG_DFL 기본 신호 처리기. |
2 | SIG_ERR 신호 오류를 나타냅니다. |
삼 | SIG_IGN 신호 무시. |
그만큼 SIG 매크로는 다음 조건에서 신호 번호를 나타내는 데 사용됩니다.
Sr. 아니. | 매크로 및 설명 |
---|---|
1 | SIGABRT 비정상적인 프로그램 종료. |
2 | SIGFPE 0으로 나누기와 같은 부동 소수점 오류. |
삼 | SIGILL 잘못된 작업입니다. |
4 | SIGINT ctrl-C와 같은 인터럽트 신호. |
5 | SIGSEGV 세그먼트 위반과 같은 스토리지에 대한 잘못된 액세스. |
6 | SIGTERM 해지 요청. |
라이브러리 기능
다음은 헤더 signal.h에 정의 된 기능입니다.
Sr. 아니. | 기능 및 설명 |
---|---|
1 | void (* signal (int sig, void (* func) (int))) (int) 이 함수는 신호를 처리하는 함수, 즉 신호 처리기를 설정합니다. |
2 | int raise (int sig) 이 기능은 신호를 일으 킵니다 sig생성됩니다. sig 인수는 SIG 매크로와 호환됩니다. |
그만큼 stdarg.h 헤더는 변수 유형을 정의합니다. va_list 그리고 인수 개수를 알 수없는 경우 함수에서 인수를 가져 오는 데 사용할 수있는 세 개의 매크로, 즉 가변 개수의 인수가 있습니다.
변수 인수의 함수는 매개 변수 목록 끝에 줄임표 (, ...)로 정의됩니다.
라이브러리 변수
다음은 헤더 stdarg.h에 정의 된 변수 유형입니다-
Sr. 아니. | 변수 및 설명 |
---|---|
1 | va_list 3 개의 매크로가 필요로하는 정보 보유에 적합한 타입입니다. va_start(), va_arg() 과 va_end(). |
라이브러리 매크로
다음은 헤더 stdarg.h에 정의 된 매크로입니다-
Sr. 아니. | 매크로 및 설명 |
---|---|
1 | 무효 va_start (va_list ap, last_arg) 이 매크로는 초기화됩니다. ap 와 함께 사용할 변수 va_arg 과 va_end매크로. 그만큼last_arg 함수에 전달되는 마지막으로 알려진 고정 인수, 즉 줄임표 앞의 인수입니다. |
2 | va_arg (va_list ap, type) 유형 이 매크로는 유형이있는 함수의 매개 변수 목록에서 다음 인수를 검색합니다. type. |
삼 | 무효 va_end (va_list ap) 이 매크로는 va_start반환 할 매크로. 만약va_end 함수에서 반환되기 전에 호출되지 않으면 결과가 정의되지 않습니다. |
그만큼 stddef.h헤더는 다양한 변수 유형과 매크로를 정의합니다. 이러한 정의의 대부분은 다른 헤더에도 나타납니다.
라이브러리 변수
다음은 헤더 stddef.h에 정의 된 변수 유형입니다-
Sr. 아니. | 변수 및 설명 |
---|---|
1 | ptrdiff_t 이것은 부호있는 정수 유형이며 두 포인터를 뺀 결과입니다. |
2 | size_t 이것은 부호없는 정수 유형이며 sizeof 예어. |
삼 | wchar_t 이것은 와이드 문자 상수 크기의 정수 유형입니다. |
라이브러리 매크로
다음은 헤더 stddef.h에 정의 된 매크로입니다-
Sr. 아니. | 매크로 및 설명 |
---|---|
1 | 없는 이 매크로는 널 포인터 상수의 값입니다. |
2 | offsetof (유형, 멤버 지정자) 그 결과 구조 시작 부분에서 구조 멤버의 바이트 단위 오프셋 인 size_t 유형의 상수 정수가 생성됩니다. 멤버는 member-designator에 의해 지정 되고 구조의 이름은 type에 지정됩니다 . |
그만큼 stdio.h header는 세 가지 변수 유형, 여러 매크로 및 입력 및 출력을 수행하기위한 다양한 기능을 정의합니다.
라이브러리 변수
다음은 헤더 stdio.h에 정의 된 변수 유형입니다-
Sr. 아니. | 변수 및 설명 |
---|---|
1 | size_t 이것은 부호없는 정수 유형이며 sizeof 예어. |
2 | FILE 파일 스트림에 대한 정보를 저장하는 데 적합한 객체 유형입니다. |
삼 | fpos_t 파일의 모든 위치를 저장하는 데 적합한 객체 유형입니다. |
라이브러리 매크로
다음은 헤더 stdio.h에 정의 된 매크로입니다-
Sr. 아니. | 매크로 및 설명 |
---|---|
1 | NULL 이 매크로는 널 포인터 상수의 값입니다. |
2 | _IOFBF, _IOLBF 과 _IONBF 이것들은 고유 한 값을 가진 정수 상수 표현식으로 확장되고에 대한 세 번째 인수로 사용하기에 적합한 매크로입니다. setvbuf 함수. |
삼 | BUFSIZ 이 매크로는 정수로, 사용자가 사용하는 버퍼 크기를 나타냅니다. setbuf 함수. |
4 | EOF 이 매크로는 음의 정수이며 파일 끝에 도달했음을 나타냅니다. |
5 | FOPEN_MAX 이 매크로는 시스템이 동시에 열리도록 보장 할 수있는 최대 파일 수를 나타내는 정수입니다. |
6 | FILENAME_MAX 이 매크로는 가장 긴 파일 이름을 보유하는 데 적합한 char 배열의 가장 긴 길이를 나타내는 정수입니다. 구현에 제한이없는 경우이 값은 권장되는 최대 값이어야합니다. |
7 | L_tmpnam 이 매크로는 정수입니다.이 매크로는에 의해 생성 된 가능한 가장 긴 임시 파일 이름을 보유하는 데 적합한 char 배열의 가장 긴 길이를 나타냅니다. tmpnam 함수. |
8 | SEEK_CUR, SEEK_END, 과 SEEK_SET 이러한 매크로는 fseek 파일에서 다른 위치를 찾는 기능. |
9 | TMP_MAX 이 매크로는 함수가 수행하는 고유 파일 이름의 최대 수입니다. tmpnam 생성 할 수 있습니다. |
10 | stderr, stdin, 과 stdout 이러한 매크로는 표준 오류, 표준 입력 및 표준 출력 스트림에 해당하는 FILE 유형에 대한 포인터입니다. |
라이브러리 기능
다음은 헤더 stdio.h에 정의 된 함수입니다-
더 나은 이해와 활용을 위해 동일한 순서의 기능을 따르십시오. Try it(온라인 컴파일러) 옵션입니다. 첫 번째 함수에서 생성 된 파일은 후속 함수에서 사용되기 때문입니다.
Sr. 아니. | 기능 및 설명 |
---|---|
1 | int fclose (파일 * 스트림) 스트림을 닫습니다. 모든 버퍼가 플러시됩니다. |
2 | void clearerr (파일 * 스트림) 지정된 스트림에 대한 파일 끝 및 오류 표시기를 지 웁니다. |
삼 | int feof (파일 * stream) 지정된 스트림에 대한 파일 끝 표시기를 테스트합니다. |
4 | int ferror (파일 * 스트림) 지정된 스트림에 대한 오류 표시기를 테스트합니다. |
5 | int fflush (파일 * stream) 스트림의 출력 버퍼를 플러시합니다. |
6 | int fgetpos (파일 * stream, fpos_t * pos) 스트림의 현재 파일 위치를 가져 와서 pos에 씁니다. |
7 | 파일 * fopen (const char * filename, const char * mode) 주어진 모드를 사용하여 파일 이름이 가리키는 파일 이름을 엽니 다. |
8 | size_t fread (void * ptr, size_t 크기, size_t nmemb, FILE * stream) 주어진 스트림에서 ptr이 가리키는 배열로 데이터를 읽습니다. |
9 | 파일 * freopen (const char * filename, const char * mode, FILE * stream) 새 파일 이름을 지정된 열린 스트림과 연결하고 동시에 스트림에서 이전 파일을 닫습니다. |
10 | int fseek (FILE * stream, long int 오프셋, int whence) 스트림의 파일 위치를 지정된 오프셋으로 설정합니다. 인수 오프셋 의미는 바이트 수는 주어진에서 추구 어디서의 위치. |
11 | int fsetpos (파일 * stream, const fpos_t * pos) 지정된 스트림의 파일 위치를 지정된 위치로 설정합니다. 인수 pos 는 fgetpos 함수가 제공하는 위치입니다. |
12 | long int ftell (파일 * 스트림) 주어진 스트림의 현재 파일 위치를 반환합니다. |
13 | size_t fwrite (const void * ptr, size_t size, size_t nmemb, FILE * stream) ptr이 가리키는 배열의 데이터를 지정된 스트림에 씁니다. |
14 | int remove (const char * filename) 더 이상 액세스 할 수 없도록 지정된 파일 이름을 삭제합니다. |
15 | int rename (const char * old_filename, const char * new_filename) old_filename이 참조하는 파일 이름이 new_filename으로 변경되도록합니다. |
16 | 무효 되감기 (FILE * 스트림) 파일 위치를 지정된 스트림의 파일 시작으로 설정합니다. |
17 | void setbuf (FILE * stream, char * buffer) 스트림 버퍼링 방법을 정의합니다. |
18 | int setvbuf (FILE * stream, char * buffer, int 모드, size_t 크기) 스트림 버퍼링 방법을 정의하는 또 다른 함수입니다. |
19 | 파일 * tmpfile (void) 바이너리 업데이트 모드 (wb +)에서 임시 파일을 생성합니다. |
20 | char * tmpnam (char * str) 존재하지 않는 유효한 임시 파일 이름을 생성하고 반환합니다. |
21 | int fprintf (FILE * stream, const char * format, ...) 형식화 된 출력을 스트림으로 보냅니다. |
22 | int printf (const char * format, ...) 형식화 된 출력을 stdout으로 보냅니다. |
23 | int sprintf (char * str, const char * format, ...) 형식화 된 출력을 문자열로 보냅니다. |
24 | int vfprintf (파일 * stream, const char * format, va_list arg) 인수 목록을 사용하여 형식화 된 출력을 스트림으로 보냅니다. |
25 | int vprintf (const char * format, va_list arg) 인수 목록을 사용하여 형식화 된 출력을 stdout으로 보냅니다. |
26 | int vsprintf (char * str, const char * format, va_list arg) 인수 목록을 사용하여 형식화 된 출력을 문자열로 보냅니다. |
27 | int fscanf (파일 * stream, const char * format, ...) 스트림에서 형식화 된 입력을 읽습니다. |
28 | int scanf (const char * format, ...) stdin에서 형식화 된 입력을 읽습니다. |
29 | int sscanf (const char * str, const char * format, ...) 문자열에서 형식화 된 입력을 읽습니다. |
30 | int fgetc (파일 * stream) 지정된 스트림에서 다음 문자 (부호없는 문자)를 가져오고 스트림의 위치 표시기를 앞으로 이동합니다. |
31 | char * fgets (char * str, int n, FILE * stream) 지정된 스트림에서 한 줄을 읽고 str이 가리키는 문자열에 저장합니다. (n-1) 문자를 읽거나, 개행 문자를 읽거나, 파일 끝에 도달 할 때 (둘 중 먼저 오는 쪽) 중지됩니다. |
32 | int fputc (int char, FILE * stream) char 인수로 지정된 문자 (부호없는 문자)를 지정된 스트림에 쓰고 스트림의 위치 표시기를 앞으로 이동합니다. |
33 | int fputs (const char * str, FILE * stream) Writes a string to the specified stream up to but not including the null character. |
34 | int getc(FILE *stream) Gets the next character (an unsigned char) from the specified stream and advances the position indicator for the stream. |
35 | int getchar(void) Gets a character (an unsigned char) from stdin. |
36 | char *gets(char *str) Reads a line from stdin and stores it into the string pointed to by, str. It stops when either the newline character is read or when the end-of-file is reached, whichever comes first. |
37 | int putc(int char, FILE *stream) Writes a character (an unsigned char) specified by the argument char to the specified stream and advances the position indicator for the stream. |
38 | int putchar(int char) Writes a character (an unsigned char) specified by the argument char to stdout. |
39 | int puts(const char *str) Writes a string to stdout up to but not including the null character. A newline character is appended to the output. |
40 | int ungetc(int char, FILE *stream) Pushes the character char (an unsigned char) onto the specified stream so that the next character is read. |
41 | void perror(const char *str) Prints a descriptive error message to stderr. First the string str is printed followed by a colon and then a space. |
The stdlib.h header defines four variable types, several macros, and various functions for performing general functions.
Library Variables
Following are the variable types defined in the header stdlib.h −
Sr.No. | Variable & Description |
---|---|
1 | size_t This is the unsigned integral type and is the result of the sizeof keyword. |
2 | wchar_t This is an integer type of the size of a wide character constant. |
3 | div_t This is the structure returned by the div function. |
4 | ldiv_t This is the structure returned by the ldiv function. |
Library Macros
Following are the macros defined in the header stdlib.h −
Sr.No. | Macro & Description |
---|---|
1 | NULL This macro is the value of a null pointer constant. |
2 | EXIT_FAILURE This is the value for the exit function to return in case of failure. |
3 | EXIT_SUCCESS This is the value for the exit function to return in case of success. |
4 | RAND_MAX This macro is the maximum value returned by the rand function. |
5 | MB_CUR_MAX This macro is the maximum number of bytes in a multi-byte character set which cannot be larger than MB_LEN_MAX. |
Library Functions
Following are the functions defined in the header stlib.h −
Sr.No. | Function & Description |
---|---|
1 | double atof(const char *str) Converts the string pointed to, by the argument str to a floating-point number (type double). |
2 | int atoi(const char *str) Converts the string pointed to, by the argument str to an integer (type int). |
3 | long int atol(const char *str) Converts the string pointed to, by the argument str to a long integer (type long int). |
4 | double strtod(const char *str, char **endptr) Converts the string pointed to, by the argument str to a floating-point number (type double). |
5 | long int strtol(const char *str, char **endptr, int base) Converts the string pointed to, by the argument str to a long integer (type long int). |
6 | unsigned long int strtoul(const char *str, char **endptr, int base) Converts the string pointed to, by the argument str to an unsigned long integer (type unsigned long int). |
7 | void *calloc(size_t nitems, size_t size) Allocates the requested memory and returns a pointer to it. |
8 | void free(void *ptr Deallocates the memory previously allocated by a call to calloc, malloc, or realloc. |
9 | void *malloc(size_t size) Allocates the requested memory and returns a pointer to it. |
10 | void *realloc(void *ptr, size_t size) Attempts to resize the memory block pointed to by ptr that was previously allocated with a call to malloc or calloc. |
11 | void abort(void) Causes an abnormal program termination. |
12 | int atexit(void (*func)(void)) Causes the specified function func to be called when the program terminates normally. |
13 | void exit(int status) Causes the program to terminate normally. |
14 | char *getenv(const char *name) Searches for the environment string pointed to by name and returns the associated value to the string. |
15 | int system(const char *string) The command specified by string is passed to the host environment to be executed by the command processor. |
16 | void *bsearch(const void *key, const void *base, size_t nitems, size_t size, int (*compar)(const void *, const void *)) Performs a binary search. |
17 | void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void*)) Sorts an array. |
18 | int abs(int x) Returns the absolute value of x. |
19 | div_t div(int numer, int denom) Divides numer (numerator) by denom (denominator). |
20 | long int labs(long int x) Returns the absolute value of x. |
21 | ldiv_t ldiv(long int numer, long int denom) Divides numer (numerator) by denom (denominator). |
22 | int rand(void) Returns a pseudo-random number in the range of 0 to RAND_MAX. |
23 | void srand(unsigned int seed) This function seeds the random number generator used by the function rand. |
24 | int mblen(const char *str, size_t n) Returns the length of a multibyte character pointed to by the argument str. |
25 | size_t mbstowcs(schar_t *pwcs, const char *str, size_t n) Converts the string of multibyte characters pointed to by the argument str to the array pointed to by pwcs. |
26 | int mbtowc(whcar_t *pwc, const char *str, size_t n) Examines the multibyte character pointed to by the argument str. |
27 | size_t wcstombs(char *str, const wchar_t *pwcs, size_t n) Converts the codes stored in the array pwcs to multibyte characters and stores them in the string str. |
28 | int wctomb(char *str, wchar_t wchar) Examines the code which corresponds to a multibyte character given by the argument wchar. |
The string.h header defines one variable type, one macro, and various functions for manipulating arrays of characters.
Library Variables
Following is the variable type defined in the header string.h −
Sr.No. | Variable & Description |
---|---|
1 | size_t This is the unsigned integral type and is the result of the sizeof keyword. |
Library Macros
Following is the macro defined in the header string.h −
Sr.No. | Macro & Description |
---|---|
1 | NULL This macro is the value of a null pointer constant. |
Library Functions
Following are the functions defined in the header string.h −
Sr.No. | Function & Description |
---|---|
1 | void *memchr(const void *str, int c, size_t n) Searches for the first occurrence of the character c (an unsigned char) in the first n bytes of the string pointed to, by the argument str. |
2 | int memcmp(const void *str1, const void *str2, size_t n) Compares the first n bytes of str1 and str2. |
3 | void *memcpy(void *dest, const void *src, size_t n) Copies n characters from src to dest. |
4 | void *memmove(void *dest, const void *src, size_t n) Another function to copy n characters from str2 to str1. |
5 | void *memset(void *str, int c, size_t n) Copies the character c (an unsigned char) to the first n characters of the string pointed to, by the argument str. |
6 | char *strcat(char *dest, const char *src) Appends the string pointed to, by src to the end of the string pointed to by dest. |
7 | char *strncat(char *dest, const char *src, size_t n) Appends the string pointed to, by src to the end of the string pointed to, by dest up to n characters long. |
8 | char *strchr(const char *str, int c) Searches for the first occurrence of the character c (an unsigned char) in the string pointed to, by the argument str. |
9 | int strcmp(const char *str1, const char *str2) Compares the string pointed to, by str1 to the string pointed to by str2. |
10 | int strncmp(const char *str1, const char *str2, size_t n) Compares at most the first n bytes of str1 and str2. |
11 | int strcoll(const char *str1, const char *str2) Compares string str1 to str2. The result is dependent on the LC_COLLATE setting of the location. |
12 | char *strcpy(char *dest, const char *src) Copies the string pointed to, by src to dest. |
13 | char *strncpy(char *dest, const char *src, size_t n) Copies up to n characters from the string pointed to, by src to dest. |
14 | size_t strcspn(const char *str1, const char *str2) Calculates the length of the initial segment of str1 which consists entirely of characters not in str2. |
15 | char *strerror(int errnum) Searches an internal array for the error number errnum and returns a pointer to an error message string. |
16 | size_t strlen(const char *str) Computes the length of the string str up to but not including the terminating null character. |
17 | char *strpbrk(const char *str1, const char *str2) Finds the first character in the string str1 that matches any character specified in str2. |
18 | char *strrchr(const char *str, int c) Searches for the last occurrence of the character c (an unsigned char) in the string pointed to by the argument str. |
19 | size_t strspn(const char *str1, const char *str2) Calculates the length of the initial segment of str1 which consists entirely of characters in str2. |
20 | char *strstr(const char *haystack, const char *needle) Finds the first occurrence of the entire string needle (not including the terminating null character) which appears in the string haystack. |
21 | char *strtok(char *str, const char *delim) Breaks string str into a series of tokens separated by delim. |
22 | size_t strxfrm(char *dest, const char *src, size_t n) Transforms the first n characters of the string src into current locale and places them in the string dest. |
The time.h header defines four variable types, two macro and various functions for manipulating date and time.
Library Variables
Following are the variable types defined in the header time.h −
Sr.No. | Variable & Description |
---|---|
1 | size_t This is the unsigned integral type and is the result of the sizeof keyword. |
2 | clock_t This is a type suitable for storing the processor time. |
3 | time_t is This is a type suitable for storing the calendar time. |
4 | struct tm This is a structure used to hold the time and date. |
tm 구조에는 다음과 같은 정의가 있습니다.
struct tm {
int tm_sec; /* seconds, range 0 to 59 */
int tm_min; /* minutes, range 0 to 59 */
int tm_hour; /* hours, range 0 to 23 */
int tm_mday; /* day of the month, range 1 to 31 */
int tm_mon; /* month, range 0 to 11 */
int tm_year; /* The number of years since 1900 */
int tm_wday; /* day of the week, range 0 to 6 */
int tm_yday; /* day in the year, range 0 to 365 */
int tm_isdst; /* daylight saving time */
};
라이브러리 매크로
다음은 헤더 time.h에 정의 된 매크로입니다-
Sr. 아니. | 매크로 및 설명 |
---|---|
1 | NULL 이 매크로는 널 포인터 상수의 값입니다. |
2 | CLOCKS_PER_SEC 이 매크로는 초당 프로세서 클럭 수를 나타냅니다. |
라이브러리 기능
다음은 헤더 time.h에 정의 된 기능입니다-
Sr. 아니. | 기능 및 설명 |
---|---|
1 | char * asctime (const struct tm * timeptr) timeptr 구조의 날짜와 시간을 나타내는 문자열에 대한 포인터를 리턴합니다. |
2 | clock_t 시계 (무효) 구현 정의 시대 (일반적으로 프로그램의 시작) 시작 이후 사용 된 프로세서 클록 시간을 반환합니다. |
삼 | char * ctime (const time_t * 타이머) 타이머 인수에 따라 현지 시간을 나타내는 문자열을 반환합니다. |
4 | double difftime (time_t time1, time_t time2) time1과 time2 (time1-time2) 사이의 초 차이를 반환합니다. |
5 | struct tm * gmtime (const time_t * timer) 타이머 값은 tm 구조로 나뉘며 그리니치 표준시 (GMT)라고도하는 협정 세계시 (UTC)로 표현됩니다. |
6 | struct tm * localtime (const time_t * timer) 타이머 값은 tm 구조로 나뉘어 현지 시간대로 표현됩니다. |
7 | time_t mktime (struct tm * timeptr) timeptr이 가리키는 구조를 현지 시간대에 따라 time_t 값으로 변환합니다. |
8 | size_t strftime (char * str, size_t maxsize, const char * format, const struct tm * timeptr) format에 정의되고 str에 저장된 형식화 규칙에 따라 구조 timeptr에 표시되는 시간을 형식화합니다. |
9 | time_t 시간 (time_t * 타이머) 현재 캘린더 시간을 계산하여 time_t 형식으로 인코딩합니다. |