LibC: Implement {,l,ll}{abs,div}
This commit is contained in:
parent
979059c804
commit
4e14f7d483
|
|
@ -45,11 +45,6 @@ void _Exit(int status)
|
||||||
_exit(status);
|
_exit(status);
|
||||||
}
|
}
|
||||||
|
|
||||||
int abs(int val)
|
|
||||||
{
|
|
||||||
return val < 0 ? -val : val;
|
|
||||||
}
|
|
||||||
|
|
||||||
int atexit(void (*func)(void))
|
int atexit(void (*func)(void))
|
||||||
{
|
{
|
||||||
void* func_addr = reinterpret_cast<void*>(func);
|
void* func_addr = reinterpret_cast<void*>(func);
|
||||||
|
|
@ -367,6 +362,45 @@ unsigned long long strtoull(const char* __restrict str, char** __restrict endp,
|
||||||
return strtoT<unsigned long long>(str, endp, base, errno);
|
return strtoT<unsigned long long>(str, endp, base, errno);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int abs(int val)
|
||||||
|
{
|
||||||
|
return val < 0 ? -val : val;
|
||||||
|
}
|
||||||
|
|
||||||
|
long labs(long val)
|
||||||
|
{
|
||||||
|
return val < 0 ? -val : val;
|
||||||
|
}
|
||||||
|
|
||||||
|
long long llabs(long long val)
|
||||||
|
{
|
||||||
|
return val < 0 ? -val : val;
|
||||||
|
}
|
||||||
|
|
||||||
|
div_t div(int numer, int denom)
|
||||||
|
{
|
||||||
|
return {
|
||||||
|
.quot = numer / denom,
|
||||||
|
.rem = numer % denom,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
ldiv_t ldiv(long numer, long denom)
|
||||||
|
{
|
||||||
|
return {
|
||||||
|
.quot = numer / denom,
|
||||||
|
.rem = numer % denom,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
lldiv_t lldiv(long long numer, long long denom)
|
||||||
|
{
|
||||||
|
return {
|
||||||
|
.quot = numer / denom,
|
||||||
|
.rem = numer % denom,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
char* realpath(const char* __restrict file_name, char* __restrict resolved_name)
|
char* realpath(const char* __restrict file_name, char* __restrict resolved_name)
|
||||||
{
|
{
|
||||||
char buffer[PATH_MAX] {};
|
char buffer[PATH_MAX] {};
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue