| Server IP : 121.121.20.254 / Your IP : 216.73.216.202 Web Server : Microsoft-IIS/10.0 System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64 User : IUSR ( 0) PHP Version : 8.3.28 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/Program Files (x86)/Windows Kits/10/Source/10.0.26100.0/ucrt/stdlib/ |
Upload File : |
//
// imaxdiv.cpp
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// Defines imaxdiv(), which performs a signed divide using intmax_t operands
// and returns the quotient and remainder. No validation of the arguments is
// done.
//
#include <inttypes.h>
extern "C" imaxdiv_t __cdecl imaxdiv(intmax_t const numerator, intmax_t const denominator)
{
imaxdiv_t result;
result.quot = numerator / denominator;
result.rem = numerator - denominator * result.quot;
// Fix incorrect truncation:
#pragma warning(push)
#pragma warning(disable: 4127)
static bool const fix_required = (-1 / 2) < 0;
if (fix_required && result.quot < 0 && result.rem != 0)
{
result.quot += 1;
result.rem -= denominator;
}
#pragma warning(pop)
return result;
}
/*
* Copyright (c) 1992-2010 by P.J. Plauger. ALL RIGHTS RESERVED.
* Consult your license regarding permissions and restrictions.
V5.30:0009 */