00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #ifndef _CPP_CSTDLIB
00035 #define _CPP_CSTDLIB 1
00036
00037 #include <bits/c++config.h>
00038 #include <bits/std_cstddef.h>
00039
00040 #pragma GCC system_header
00041 #include <stdlib.h>
00042
00043
00044 #undef abort
00045 #undef abs
00046 #undef atexit
00047 #undef atof
00048 #undef atoi
00049 #undef atol
00050 #undef bsearch
00051 #undef calloc
00052 #undef div
00053 #undef exit
00054 #undef free
00055 #undef getenv
00056 #undef labs
00057 #undef ldiv
00058 #undef malloc
00059 #undef mblen
00060 #undef mbstowcs
00061 #undef mbtowc
00062 #undef qsort
00063 #undef rand
00064 #undef realloc
00065 #undef srand
00066 #undef strtod
00067 #undef strtol
00068 #undef strtoul
00069 #undef system
00070 #undef wcstombs
00071 #undef wctomb
00072
00073 namespace std
00074 {
00075 using ::div_t;
00076 using ::ldiv_t;
00077
00078 using ::abort;
00079 using ::abs;
00080 using ::atexit;
00081 using ::atof;
00082 using ::atoi;
00083 using ::atol;
00084 using ::bsearch;
00085 using ::calloc;
00086 using ::div;
00087 using ::exit;
00088 using ::free;
00089 using ::getenv;
00090 using ::labs;
00091 using ::ldiv;
00092 using ::malloc;
00093 using ::mblen;
00094 using ::mbstowcs;
00095 using ::mbtowc;
00096 using ::qsort;
00097 using ::rand;
00098 using ::realloc;
00099 using ::srand;
00100 using ::strtod;
00101 using ::strtol;
00102 using ::strtoul;
00103 using ::system;
00104 using ::wcstombs;
00105 using ::wctomb;
00106
00107 inline long
00108 abs(long __i) { return labs(__i); }
00109
00110 inline ldiv_t
00111 div(long __i, long __j) { return ldiv(__i, __j); }
00112 }
00113
00114 #if _GLIBCPP_USE_C99
00115
00116 #undef _Exit
00117 #undef llabs
00118 #undef lldiv
00119 #undef atoll
00120 #undef strtoll
00121 #undef strtoull
00122 #undef strtof
00123 #undef strtold
00124
00125 namespace __gnu_cxx
00126 {
00127 using ::lldiv_t;
00128 using ::_Exit;
00129
00130 inline long long
00131 abs(long long __x) { return __x >= 0 ? __x : -__x; }
00132
00133 inline long long
00134 llabs(long long __x) { return __x >= 0 ? __x : -__x; }
00135
00136 inline lldiv_t
00137 div(long long __n, long long __d)
00138 { lldiv_t __q; __q.quot = __n / __d; __q.rem = __n % __d; return __q; }
00139
00140 inline lldiv_t
00141 lldiv(long long __n, long long __d)
00142 { lldiv_t __q; __q.quot = __n / __d; __q.rem = __n % __d; return __q; }
00143
00144 using ::atoll;
00145 using ::strtof;
00146 using ::strtoll;
00147 using ::strtoull;
00148 using ::strtold;
00149 }
00150
00151 namespace std
00152 {
00153 using __gnu_cxx::lldiv_t;
00154 using __gnu_cxx::_Exit;
00155 using __gnu_cxx::abs;
00156 using __gnu_cxx::llabs;
00157 using __gnu_cxx::div;
00158 using __gnu_cxx::lldiv;
00159 using __gnu_cxx::atoll;
00160 using __gnu_cxx::strtof;
00161 using __gnu_cxx::strtoll;
00162 using __gnu_cxx::strtoull;
00163 using __gnu_cxx::strtold;
00164 }
00165 #endif
00166
00167 #endif