All Questions

Tagged with
162 questions with no upvoted or accepted answers
Filter by
Sorted by
Tagged with
5votes
0answers
37views

How to parse floating point infinity from std::istream

I have written a superdumb serialization library for a project that I am working on. I just got bitten by floating point infinity, which I illustrate with the sample program below. I expect the ...
user avatar
  • 345
5votes
0answers
116views

Probable bug in MSVC with compile-time NaN comparison

My colleague was doing some basic experiments with NaN and was puzzled by the behavior on Visual Studio that did not match his expectations. After discussion, it seems that he uncovered a probable ...
user avatar
  • 5,477
5votes
0answers
146views

How to catch floating point errors early (right at where they occur)?

When developing floating-point heavy code, it is very useful to enable FPU exceptions. When an operation results in a NaN/inf, we could catch it immediately. For example, on Linux, I can enable this ...
user avatar
  • 27.4k
4votes
0answers
384views

C# Change FPU rounding mode

I'm attempting to write an interval arithmetic library in C# .NET, but in order to do this accurately I need to be able to control the rounding mode of floating point operations. After a bit of ...
user avatar
  • 639
4votes
0answers
2kviews

pragma STDC FENV_ACCESS ON is not supported

I tried to slightly modify the example from the article: #include <iostream> #include <cfenv> #pragma STDC FENV_ACCESS ON int main() { std::feclearexcept(FE_ALL_EXCEPT); //int r ...
user avatar
4votes
2answers
1kviews

How to correctly pass a float from C# to C++ (dll)

I'm getting huge differences when I pass a float from C# to C++. I'm passing a dynamic float wich changes over time. With a debugger I get this: c++ lonVel -0.036019072 float c# lonVel -0....
user avatar
3votes
2answers
544views

Find smallest integer that satisfies floating point inequality equation

I am looking for a fast algorithm that finds the smallest integer N that will satisfy the following inequality where s, q, u, and p are float numbers (using the IEEE-754 binary32 format): s > q + ...
user avatar
3votes
1answer
204views

Casting float to int inconsistent across MinGw and Clang

Using C++, I'm trying to cast a float value to an int using these instructions : #include <iostream> int main() { float NbrToCast = 1.8f; int TmpNbr = NbrToCast * 10; std::cout <...
user avatar
  • 25.6k
3votes
1answer
84views

std::fmod(4.2, 0.12) is equal to epsilon * 1.5

auto a{ 4.2 }; auto b{ 0.12 }; auto result = std::fmod(a, b); if(result <= std::numeric_limits<double>::epsilon()) result = 0; // <-- This line isn't triggered In this example, 4.2 is ...
user avatar
  • 31
2votes
1answer
175views

Rational approximation of double using int numerator and denominator in C++

A real world third party API takes a parameter of type fraction which is a struct of an int numerator and denominator. The value that I need to pass is known to me as a decimal string that is ...
user avatar
2votes
0answers
80views

Invert the sign of a non-negative floating-point number: Would std::copysign(x) make a difference than (-1)*x?

Let's say we would write a function that would return the inverse of a non-negative floating-point number x. Would the following two functions make a difference in the result (say rounding issues), if ...
user avatar
  • 7,124
2votes
0answers
95views

Is there options to set on Visual Studio to keep deterministic floating-point results between different multi-thread setup?

I am working with OpenMp with VS2017 in order to compute our statistics with multi-thread process. But, for few values, we found out that results can be differents with the number of threads set. For ...
user avatar
2votes
0answers
272views

how to work around boost::multiprecision::cpp_dec_float division error

Division with boost::multiprecision::cpp_dec_float have some kind of rounding error, as follows: #include <iostream> #include <boost/multiprecision/cpp_dec_float.hpp> using my_t = boost::...
user avatar
  • 2,517
2votes
2answers
161views

How to detect differences in floating point behaviour across platforms

What checks can I perform to identify what differences they are in the floating point behaviour of two hardware platforms? Verifying IEE-754 compliance or checking for known bugs may be sufficient (...
user avatar
  • 4,103
2votes
1answer
568views

Casting from (long)double to size_t

I'm trying to implement Sieve of Eratosthenes as efficient as possible. I'd like to set length of my prime array to upper bond of pi(n) < 1.25506n / ln n but I'm not sure how to proceed with ...
user avatar
  • 177
2votes
2answers
735views

Simple alternatives to floating-point when performing arithmetic on short string-encoded rationals

I am creating unit tests for a function that rounds "rational" numbers stored as strings. The current rounding implementation casts the strings to a floating point type: #include <boost/...
user avatar
2votes
0answers
118views

Finding smallest float x such that x+d=y

How to find the smallest float/double number x which satisfies x + d = y given d and y? (iiuc this is theoretically solved via setting fesetround (FE_DOWNWARD) and just doing y - d but in clang/Xcode ...
user avatar
  • 22.2k
2votes
0answers
350views

C++ Printing floats with specified number of decimal places

I have numbers stored in a float and I want it to print up to 5 decimal places. The only problem is that I don't want to print 0s afterwards, nor actually modifying the number. For example: 1 should ...
user avatar
2votes
0answers
154views

Is there a warning for floating point equality checking in visual studio (2013) c++

I'm looking for a warning in MS visual studio 2013 similar to Gcc's -Wfloat-equal I would like to turn on this warning, and compile my code, and find any places that i might need to re-examine for ...
user avatar
  • 133
2votes
0answers
337views

C++ Decimal Floating Point Erroneous Rounding

I am seeing some strange behavior when attempting to use libdfp in a C++ program. Specifically, it appears as if GCC is always rounding to 8 decimal places, even when I use the 64- and 128-bit ...
user avatar
  • 2,061
2votes
0answers
236views

failure of floating point interrupt MFC Windows 10

We have an MFC product built in Visual Studio 2012/13 in C++ that performs many mathematical calculations. We use floating point interrupts through the coprocessor to help speed up the calculations, ...
user avatar
2votes
0answers
379views

Why Floating point exception handling doesn't work in Embarcadero C++ Builder in 64 bit compilation?

I can't make working floating point exception handling in Embarcadero C++ Builder XE8 in 64 bit compilation. 32-bit compilation works fine. (MS Visual C++ works fine in both 32-bit and 64-bit ...
user avatar
2votes
0answers
143views

Stalled cycles due to fldz instruction

I am trying to interpret some perf results on a Xeon x5675 processor. I have a program where a large percentage of the cycles are stalls (from perf stat). Using perf record -e stalled-cycles-...
user avatar
  • 1,855
2votes
3answers
590views

Converting fl in hexadecimal in c++

I am new to C++, and programming, and I want to write a C++ program to convert a float in hexadecimal with the help of pointers I've looked on other threads and really tried to get a hold of this but ...
user avatar
  • 2,168
2votes
0answers
817views

Implementing unordered set of triplets

I have two 3D data-sets. Each element in these sets is a triplet of type (float,float,float). These data-sets have some duplicate elements. I want to merge these two data-sets in such a way so that ...
user avatar
  • 475
2votes
5answers
4kviews

Save float * images in C++

I wanted to understand how I can save an image of type float: float * image; Allocated in this way: int size = width * height; image = (float *)malloc(size * sizeof(float)); I tried using the ...
user avatar
2votes
1answer
2kviews

SSE: convert from const __m128 * to const float *

I'm trying to write a little SSE code but can't continue because of this error: error C2664: '_mm_loadu_ps' : cannot convert parameter 1 from 'const __m128 *' to 'const float *' I've to load ...
user avatar
  • 156
1vote
0answers
31views

C++ ignores the second input if the type of the first input in not correct

This is the code: #include <iostream> using namespace std; int main() { int var1; float var2; cout << "input var1:"; cin >> var1; cout << "...
user avatar
  • 13
1vote
0answers
160views

Inconsistent results between GCC and Clang for simple floating point calculation

On my Intel x86_64 machine, this C++ code generates different sequences on Clang vs GCC: #include <iostream> namespace { template<typename Out> constexpr auto caster{[](auto x) constexpr ...
user avatar
1vote
1answer
65views

Is it possible to force truncation when instantiating Boost cpp_dec_float from a floating point value?

We are writing software doing arithmetic operations on number with 8 fixed decimal digits (8 decimal digits after the .). We have been bitten by the limited precision of built-in floating point types ...
user avatar
  • 7,252
1vote
1answer
99views

Insert FLOAT values into mysql table

I am trying to insert values of type FLOAT into a table using (the C++ connector is in use) res = stmt->executeQuery("INSERT INTO `ticker_info`(`a1`,`a2`,`a3`,`b1`,`b2`,`b3`,`c1`,`c2`,`v1`,`v2`...
user avatar
1vote
0answers
56views

Are there any floating-point requirements concerning precision and range in the C++ standard

The C++ Standard makes the following statements: [basic.fundamental]: There are three floating-point types: float, double, and long double. The type double provides at least as much precision as ...
user avatar
  • 22.5k
1vote
0answers
66views

Floating point log() * y to integer

Consider the function: int log2di(double x) { return (int)log2(x); } Since the log2 result is immediately truncated to int, this can be much more efficiently implemented using1 std::ilogb or std::...
user avatar
  • 55.9k
1vote
0answers
135views

C++ issue with istringstream and reading floats

I'm trying to read strings and floats from stdin but I'm running into a weird issue. When reading certain characters the input is "consumed" and lost before being read as a string. I'm expecting that ...
user avatar
1vote
1answer
52views

Reading float type numbers from a .txt file and using them in formulas

I am trying to read numbers from a .txt file and use them in formulas within my code and output the results into another .txt file so I can use them easier. My problem is reading the 3000 lines of ...
user avatar
1vote
0answers
77views

Is it possible to run custom initialisation code ONCE for each thread created in boost::asio::threadpool

I've noticed that boost::asio::threadpool does not copy threadlocal state such as the floating point environment into the child threads. This caused subtle bugs in my application. My current solution ...
user avatar
1vote
0answers
123views

How to print glm vector with manually specified precion?

I know about glm::to_string but I cannot find away to set precision of the string conversion. A few issues come up because of this. If I want to serialize glm structures, I won't be able to store ...
user avatar
  • 3,881
1vote
0answers
248views

Conversion Precision Error when converting IEE Half Precision Floating Point to Decimal

I have some precision error during the conversion from 16 bit half precision floating point format to decimal. It is able to accurately convert certain numbers while at the same time not accurate for ...
user avatar
  • 31
1vote
0answers
59views

How can we work on fixed amount of precision that is less than double but more than float?

I'm just trying to do something. There is a some computation to be done using double-type variables. We have two parameters "x" and "y" where we need to store log2(x) with y-bit precision. First ...
user avatar
1vote
1answer
486views

how to convert python float to bytes to be interpreted in C++ programm

I need to build a python script that export data to a custom file format. This file is then read by a cpp programm (I have the source code, but cannot compile it). custome file fomat spec: The file ...
user avatar
1vote
0answers
45views

Is there a generic standard way to store floats in a std::set and/or a std::unordered_set?

We know that NaN != NaN for IEEE floats. As a result, a number of "obvious" operations on floating pint numbers have a hidden gotchas in which NaNs in the data can mess things up terribly. For example:...
user avatar
  • 7,537
1vote
0answers
90views

Does cpp_dec_float give consistent results across platforms?

Can a custom number type such as cpp_dec_float (from Boost) guarantee a consistent floating-point arithmetic behavior (on trigonometric functions such as cos, sin, tan, atan) across different system ...
user avatar
  • 1,749
1vote
0answers
101views

Union for storing Timestamp. Comparing floats as integers

While trying to wrap my brain around a custom game engine, I stumbled across a piece of code that looks rather odd to me: union TimeStamp { f32 asFloat; u32 asUInt; TimeStamp() : asUInt(...
user avatar
1vote
0answers
693views

std::ostream, truncate instead of rounding for floating-point numbers

I have my own io-manipulator that prepares a std::ostream stream to print floating-point numbers: #include <iostream> #include <iomanip> inline std::ostream& my_fmt(std::ostream&...
user avatar
  • 9,649
1vote
0answers
1kviews

Floating point: choose epsilon to prevent zero division?

I have simple formula in my C++ program: const double z = x / tan(y); x is number from 1000 to 10 * 1000, y any angle. What is the right way to protect the code from zero division? I mean, I know ...
user avatar
  • 6,641
1vote
0answers
43views

Should the matrix4 comparison method be consider the floating point comparison logic?

I made a Matrix class. and added some methods for matrix calculation. I met some problems related with floating point operation. First time, I made a eqaul method like below: bool FloatMatrix4::...
user avatar
  • 11
1vote
1answer
321views

Is double arithmetic the same in cpp and javascript?

Context: I'm trying to port into c++ the implementation of a hash function that uses double arithmetic from its original implementation in JavaScript. In this function, the doubles we are operating on ...
user avatar
1vote
2answers
286views

C++ floating point subtraction doesn't appear to occur

I'm trying to create overflow checks for addition (among other operations) and while the unit tests that I wrote for ints and longs worked fine, I've had some trouble trying to extend it to floats. ...
user avatar
  • 323
1vote
0answers
149views

How to build filtered construction predicates in CGAL?

I want to use CGAL's exact predicates inexact constructions kernel, but I would like to use exact arithmetic on few selected Plane_3 constructions where intermediate computation of the plane ...
user avatar
1vote
0answers
185views

Reading numbers from txt in C++ (keep same # of decimals)

I have a txt with numbers in this format: 256.6 689.8 460.9 127.2 1027.5 110.5 1516.1 92.6 1319.9 580.3 And the following code in C++ to read them: Vector<float> txt_data; fstream myfile(...
user avatar
  • 1,044

15 30 50 per page