Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
C стандартты кітапханасының математикалық функцияларды қамтамасыз ететін бас файл.
C standard library header file providing mathematical functions
C математикалық операциялары – C бағдарламалау тілінің стандартты кітапханасындағы негізгі математикалық функцияларды іске асыратын функциялар тобы. Барлық функциялар қандайда бір жолмен қозғалмалы нүктелі сандарды қолданады. Әртүрлі C стандарттары әртүрлі, бірақ артқа қарай үйлесімді функциялар жиынтығын ұсынады. Бұл функциялардың көпшілігі C++ стандартты кітапханасында да қолжетімді, бірақ басқа бас файлдарда (C бас файлдары да қосады, бірақ тек ескірген үйлесімділік мүмкіндігі ретінде).
C mathematical operations are a group of functions in the standard library of the C programming language implementing basic mathematical functions. All functions use floating point numbers in one manner or another. Different C standards provide different, albeit backwards compatible, sets of functions. Most of these functions are also available in the C++ standard library, though in different headers (the C headers are included as well, but only as a deprecated compatibility feature).
Жалпы типтік функциялар
<tgmath.h> басқысы <math.h> және <complex.h> анықталған әрбір математикалық функция үшін типтік жалпы макро анықтайды. Бұл математикалық функциялардың функцияны жүктеуіне шектеулі қолдау көрсетеді: бірдей функция аты әртүрлі параметрлермен қолданылуы мүмкін; нақты функция параметрлердің типтеріне сәйкес компиляция уақытында таңдалады. Нақты және кешенді сандар үшін анықталған функцияға сәйкес келетін әрбір типтік жалпы макро барлығы 6 түрлі функцияны қамтиды: float, double және long double, сондай-ақ олардың кешенді нұсқалары. Тек нақты сандар үшін анықталған функцияға сәйкес келетін типтік жалпы макро барлығы 3 түрлі функцияны қамтиды: функцияның float, double және long double нұсқалары. C++ тілі функцияларды жүктеуге қатысты өздігінен қолдау көрсетеді, сондықтан <tgmath.h> басқысын, тіпті үйлесімділік үшін де, ұсынбайды.
The header <tgmath. h> defines a type generic macro for each mathematical function defined in <math. h> and <complex. h>. This adds a limited support for function overloading of the mathematical functions: the same function name can be used with different types of parameters; the actual function will be selected at compile time according to the types of the parameters. Each type generic macro that corresponds to a function that is defined for both real and complex numbers encapsulates a total of 6 different functions: float, double and long double, and their complex variants. The type generic macros that correspond to a function that is defined for only real numbers encapsulates a total of 3 different functions: float, double and long double variants of the function. The C++ language includes native support for function overloading and thus does not provide the <tgmath. h> header even as a compatibility feature.
Кездейсоқ сандар генерациясы
Бастығы <stdlib. h> (<cstdlib> C++ тілінде) статистикалық түрде кездейсоқ сандарды жасау үшін пайдаланылатын бірнеше функцияларды анықтайды. Функцияның сипаттамасы: rand 0 мен RAND MAX аралығындағы псевдокездейсоқ санды жасайды. srand псевдокездейсоқ сандар генераторын инициализациялайды. arc4random 0 мен UINT32 MAX аралығындағы псевдокездейсоқ санды жасайды, әдетте, rand-тен жақсырақ алгоритмді қолданады. arc4random uniform 0 мен белгілі бір максималды мән аралығындағы псевдокездейсоқ санды жасайды. arc4random buf буферді псевдокездейсоқ биттер ағынымен толтырады. arc4random stir псевдокездейсоқ сандар генераторын бастамалайды. arc4random кездейсоқ сан функцияларының отбасы POSIX стандартында анықталмаған, бірақ кейбір жалпы libc нұсқаларында кездеседі. Бұл бастапқыда RC4 шифрінің ағып кеткен нұсқасының кілттік ағыны генераторына сілтеме жасады (сондықтан "шамаланған RC4" деп аталды), бірақ содан бері ChaCha20 сияқты басқа шифрлерден алынған әртүрлі алгоритмдер сол атпен іске асырылды. rand-тан алынған кездейсоқтық сапасы әдетте статистикалық түрде кездейсоқ деп санауға тым нашар және оған нақты түрде бастама беру қажет. Мүмкіндігінше, rand орнына arc4random қолдану ұсынылады. Кейбір C кітапханалары rand функциясын arc4random uniform арқылы ішкі түрде іске асырады.
The header <stdlib. h> (<cstdlib> in C++) defines several functions that can be used for statistically random number generation. Function Description rand generates a pseudo random number between 0 and RAND MAX, inclusive. srand initializes a pseudo random number generator arc4random generates a pseudo random number between 0 and UINT32 MAX, usually using a better algorithm than rand arc4random uniform generates a pseudo random number between 0 and a maximum value. arc4random buf fill a buffer with a pseudo random bitstream. arc4random stir initializes a pseudo random number generator. The arc4random family of random number functions are not defined in POSIX standard, but is found in some common libc implementations. It used to refer to the keystream generator of a leaked version of RC4 cipher (hence "alleged RC4"), but different algorithms, usually from other ciphers like ChaCha20, have been implemented since using the same name. The quality of randomness from rand are usually too weak to be even considered statistically random, and it requires explicit seeding. It is usually advised to use arc4random instead of rand when possible. Some C libraries implement rand using arc4random uniform internally.