Search Results

Search found 9387 results on 376 pages for 'double byte'.

Page 20/376 | < Previous Page | 16 17 18 19 20 21 22 23 24 25 26 27  | Next Page >

  • Find max integer size that a floating point type can handle without loss of precision

    - by Checkers
    Double has range more than a 64-bit integer, but its precision is less dues to its representation (since double is 64-bit as well, it can't fit more actual values). So, when representing larger integers, you start to lose precision in the integer part. #include <boost/cstdint.hpp> #include <limits> template<typename T, typename TFloat> void maxint_to_double() { T i = std::numeric_limits<T>::max(); TFloat d = i; std::cout << std::fixed << i << std::endl << d << std::endl; } int main() { maxint_to_double<int, double>(); maxint_to_double<boost::intmax_t, double>(); maxint_to_double<int, float>(); return 0; } This prints: 2147483647 2147483647.000000 9223372036854775807 9223372036854775800.000000 2147483647 2147483648.000000 Note how max int can fit into a double without loss of precision and boost::intmax_t (64-bit in this case) cannot. float can't even hold an int. Now, the question: is there a way in C++ to check if the entire range of a given integer type can fit into a loating point type without loss of precision? Preferably, it would be a compile-time check that can be used in a static assertion, and would not involve enumerating the constants the compiler should know or can compute.

    Read the article

  • Round-twice error in .NET's Double.ToString method

    - by Jeppe Stig Nielsen
    Mathematically, consider for this question the rational number 8725724278030350 / 2**48 where ** in the denominator denotes exponentiation, i.e. the denominator is 2 to the 48th power. (The fraction is not in lowest terms, reducible by 2.) This number is exactly representable as a System.Double. Its decimal expansion is 31.0000000000000'49'73799150320701301097869873046875 (exact) where the apostrophes do not represent missing digits but merely mark the boudaries where rounding to 15 resp. 17 digits is to be performed. Note the following: If this number is rounded to 15 digits, the result will be 31 (followed by thirteen 0s) because the next digits (49...) begin with a 4 (meaning round down). But if the number is first rounded to 17 digits and then rounded to 15 digits, the result could be 31.0000000000001. This is because the first rounding rounds up by increasing the 49... digits to 50 (terminates) (next digits were 73...), and the second rounding might then round up again (when the midpoint-rounding rule says "round away from zero"). (There are many more numbers with the above characteristics, of course.) Now, it turns out that .NET's standard string representation of this number is "31.0000000000001". The question: Isn't this a bug? By standard string representation we mean the String produced by the parameterles Double.ToString() instance method which is of course identical to what is produced by ToString("G"). An interesting thing to note is that if you cast the above number to System.Decimal then you get a decimal that is 31 exactly! See this Stack Overflow question for a discussion of the surprising fact that casting a Double to Decimal involves first rounding to 15 digits. This means that casting to Decimal makes a correct round to 15 digits, whereas calling ToSting() makes an incorrect one. To sum up, we have a floating-point number that, when output to the user, is 31.0000000000001, but when converted to Decimal (where 29 digits are available), becomes 31 exactly. This is unfortunate. Here's some C# code for you to verify the problem: static void Main() { const double evil = 31.0000000000000497; string exactString = DoubleConverter.ToExactString(evil); // Jon Skeet, http://csharpindepth.com/Articles/General/FloatingPoint.aspx Console.WriteLine("Exact value (Jon Skeet): {0}", exactString); // writes 31.00000000000004973799150320701301097869873046875 Console.WriteLine("General format (G): {0}", evil); // writes 31.0000000000001 Console.WriteLine("Round-trip format (R): {0:R}", evil); // writes 31.00000000000005 Console.WriteLine(); Console.WriteLine("Binary repr.: {0}", String.Join(", ", BitConverter.GetBytes(evil).Select(b => "0x" + b.ToString("X2")))); Console.WriteLine(); decimal converted = (decimal)evil; Console.WriteLine("Decimal version: {0}", converted); // writes 31 decimal preciseDecimal = decimal.Parse(exactString, CultureInfo.InvariantCulture); Console.WriteLine("Better decimal: {0}", preciseDecimal); // writes 31.000000000000049737991503207 } The above code uses Skeet's ToExactString method. If you don't want to use his stuff (can be found through the URL), just delete the code lines above dependent on exactString. You can still see how the Double in question (evil) is rounded and cast.

    Read the article

  • Auto-responder rule in Outlook 2010 produces double signature (but only to certain emails)

    - by Austin ''Danger'' Powers
    I have set up an auto-responder in Outlook 2010 using a custom template, as a staff member will be on vacation for 6 weeks. It works perfectly, apart from the fact certain people receive two signatures at the bottom of the message instead of one. When reviewing the "sent" folder, there is no sign of double signatures. In the custom template, there is only 1 copy of the signature. Signatures are set to be applied automatically to new messages or replies- however, if I remove the signature from the template, then it seems no one receives a response with the signature. People sending from Hotmail accounts do not receive a duplicate signature. Gmail users do see a duplicate signature. Does anyone have any idea what could be causing this?

    Read the article

  • Mouse(s) double clicks instead of single click (its not the mouse)

    - by Iznogood
    I am aware of this very similar question: But I have tried with 3 different mouses and everyone of them exibit the same behavior. Simple enough, 1 out of 3 times I get a double click when single clicking). I searched the net a lot about this problem and have yet to find a solution. I have tried: 1- switch to another mouse 2- uninstall the mouse drivers + reboot 3- I do not have any special mouse drivers/software like intellisense and logitecs to uninstall. 4- verified that I was not in fact on some setting that says open files with single click. 5- everything is up to date including a antivirus 6- Installed fresh drivers from dell's website It is a dell vostro 260 computer running windows 7 pro 64. edit: added a 6th thing I tried. edit2: tried reinstalling every windows update I could find nothing Boss just said he'd buy me a logitech mouse hoping the drivers will fix my problems. Hopefuly!

    Read the article

  • Script or Utility to convert .nab to .csv without importing double entries in Outlook

    - by Chris
    Currently our environment is migrating from Groupwise 7 to Outlook 2003 and we have multiple users with mission critical outside contacts in their frequent contacts that will have to be imported in Outlook. Currently our only solution is to export GW contacts to a .nab, import to excel to scrub out the contacts in our own domain (to avoid double entry) and convert to .csv. This current solution will require a lot of man hours for hand holding because most of our users are not technically savvy AT ALL and are frankly too busy to do this themselves. Anyone know of any kind of tool or script to assist with this?

    Read the article

  • If I double my ram on a x86 processor, does that double the ram I can use for each individual process?

    - by Derek Reitz
    I don't understand how 32-Bit OS's use RAM on a per process basis. I've read the max RAM my x86 processor running a 32-bit OS can use is 2^32 = 4gb; but that's just for one process, right? 3DS Max keeps crashing, but it typically can never use more than 2GB of RAM before it crashes, if I increase my RAM from 4-8GB, would that double how much RAM I can use for each individual process or actually cause no change in my performance? Also would increasing my VRAM and getting a better graphics card increase the extent to which individual programs can preform? Lastly, is there any way to upgrade a 86-bit processor to be able to run a 64-bit OS? I feel like it would be ridiculous to sell modern processors that are capped at 4GB of RAM? Thanks. Quad-Core Intel i7 Q 720 @ 1.6GHz

    Read the article

  • Seeing double-cursor in 'recursive RDP'

    - by John
    I'm using a Virtual PC VM on my PC to connect to a remote PC using RDP over a VPN. It works just fine except that in the RDP session, I often see a double mouse cursor... I get a standard mouse-arrow and the context-specific cursor such as a caret or hourglass. It's not a big problem but rather annoying and I wondered if there's any way to fix it, or at least understand where it comes from? Is it because I'm effectively running one RDP session from inside another? My host PC runs W7, my local VM runs XP, and the remote PC access using RDP is W7. Thankyou for any help.

    Read the article

  • Why Is ToString() Rounding My Double Value?

    - by user163757
    How do I prevent my double value from being rounded when converting to a string? I have tried both Convert.ToString and ToString() with the same result. For example my double may look something like 77.987654321, and the two strings conversions convert to to 77.98765. I need to keep the precision of the value as is.

    Read the article

  • int, short, byte performance in back-to-back for-loops

    - by runrunraygun
    (background: http://stackoverflow.com/questions/1097467/why-should-i-use-int-instead-of-a-byte-or-short-in-c) To satisfy my own curiosity about the pros and cons of using the "appropriate size" integer vs the "optimized" integer i wrote the following code which reinforced what I previously held true about int performance in .Net (and which is explained in the link above) which is that it is optimized for int performance rather than short or byte. DateTime t; long a, b, c; t = DateTime.Now; for (int index = 0; index < 127; index++) { Console.WriteLine(index.ToString()); } a = DateTime.Now.Ticks - t.Ticks; t = DateTime.Now; for (short index = 0; index < 127; index++) { Console.WriteLine(index.ToString()); } b=DateTime.Now.Ticks - t.Ticks; t = DateTime.Now; for (byte index = 0; index < 127; index++) { Console.WriteLine(index.ToString()); } c=DateTime.Now.Ticks - t.Ticks; Console.WriteLine(a.ToString()); Console.WriteLine(b.ToString()); Console.WriteLine(c.ToString()); This gives roughly consistent results in the area of... ~950000 ~2000000 ~1700000 which is in line with what i would expect to see. However when I try repeating the loops for each data type like this... t = DateTime.Now; for (int index = 0; index < 127; index++) { Console.WriteLine(index.ToString()); } for (int index = 0; index < 127; index++) { Console.WriteLine(index.ToString()); } for (int index = 0; index < 127; index++) { Console.WriteLine(index.ToString()); } a = DateTime.Now.Ticks - t.Ticks; the numbers are more like... ~4500000 ~3100000 ~300000 Which I find puzzling. Can anyone offer an explanation? NOTE: In the interest of compairing like for like i've limited the loops to 127 because of the range of the byte value type. Also this is an act of curiosity not production code micro-optimization.

    Read the article

  • Converting a int to a BCD byte array

    - by Lily
    I want to convert an int to a byte[2] array using BCD. The int in question will come from DateTime representing the Year and must be converted to two bytes. Is there any pre-made function that does this or can you give me a simple way of doing this? example: int year = 2010 would output: byte[2]{0x20, 0x10};

    Read the article

  • Silverlight changes the io.Stream to byte[]

    - by Sai
    I have created a WCF service for uploading images , which accepts System.IO.Stream as input parameter and am using streaming. When I added the service reference in Silverlight project then it automatically changed the parameter of my WCF method from System.IO.Stream to byte[]. Can anyone suggest if there is a way around this so that I can get System.IO.Stream type rather than byte[]. Thanks in advance

    Read the article

  • Double Timezone offset

    - by gAMBOOKa
    I have a timezone name and I want the name of the timezone double its offset. For instance, Asia/Dubai is +4, I want to double that to +8... and have it resolved to Asia/HonkKong Language: PHP Here's a sample of what it would look like: $timezone = "Asia/Dubai" $offset = $timezone->getOffset(); $offset *= 2; $timezone = $offset->getTimeZone(); Output: Asia/HonkKong

    Read the article

  • need a regex to parse a csv file with double quotes in php

    - by Brandon G
    Trying to parse a csv file that has all the data wrapped in double quotes, because there may be commas in the double quotes. Looks like this: $songs = '"1, 2, 3, 4 (I Love You)","Plain White T's","CBE10-22",15,"CBE10-22","","","CB",984,"","10/05/10"'; $regResult = preg_match( "", $songs, $matches ); I can't figure out a regex that will return the data between the quotes as the matches. I'm sure there is some regex master that can help me with this.

    Read the article

  • cocoa - converting a double to string

    - by Mike
    I have a double number and I would like to convert it to string. The number is, for example, something like 24.043333332154465777... but if I convert it to string using something like NSString *myString = [NSString stringWithFormat:@"%f", myDouble]; The string is just 24.043333 how do I get a full string the corresponds to the whole double number? What other methods do I have to convert this?

    Read the article

  • How to fill byte array with junk?

    - by flyout
    I am using this: byte[] buffer = new byte[10240]; As I understand this initialize the buffer array of 10kb filled with 0s. Whats the fastest way to fill this array (or initialize it) with junk data every time? I need to use that array like 5000 times and fill it every time with different junk data, that's why I am looking for a fast method to do it. The array size will also have to change every time.

    Read the article

  • Equality with Double.NaN

    - by chris
    I have the following code... if (Price_Foreign != Double.NaN) { output.Append(spacer); output.Append(String.Format("{0,-10:C} USD",Price_Foreign)); } Which outputs: NaN USD What gives? I'm using Double.NaN to indicate that the value doesn't exist, and shouldn't be output.

    Read the article

  • Azure storage - double decimal point ignored on save

    - by Fabio Milheiro
    I have a value that is correctly stored in a property of an object, but when I save the changes to the Azure storage database, the double value is stored to the database ignoring the point (7.1000000003 is saved as 711). Also, the property is changed to 711.0. How do I solve this problem? The field is already set to double in the class and the database table.

    Read the article

< Previous Page | 16 17 18 19 20 21 22 23 24 25 26 27  | Next Page >