![]() |
| ||
| Problem Converting String to Float - Using ATOF Hello yet again... Anyway, I'm trying to convert a string that has the form of "1097.04", that is, decimal fixed point with two digits after the decimal point. My code currently reads this number from a file then stores it in a *char. Then when i try to convert this *char into a double it instead returns a 0. Here's my code: char *price_1, *price_2; Where 't', is the buffer that reads from the file line-by-line and argv[1] is the file being read in, 'datafile', which is of form [Stock] [Price_1] [Price_2]: IPHON 400.00 500.00 WALMA 50.00 75.00 KROGE 100.00 120.00 CHOOC 24.00 34.24 MICRO 1234.56 2000.00 Here's my output: -bash-3.2$ ./StockOrders datafile logfile server client Broker is waiting for request... Request quote to buy MICRO by 5555. Client says, "Request quote to buy MICRO by 5555. ." Client wants to buy... Printing stock_id: MICRO Printing cust_id: 5555 Broker is generating quote... Found the stock in datafile! MICRO Printing price_1: 1234.56 Printing price1: 0 -bash-3.2$ Thanks again! |
| ||
| Re: Problem Converting String to Float - Using ATOF I'm thinking that your problem is actually the format character in the last printf. '%d' is for decimals/integers. Try using a '%f' instead. |
| All times are GMT -4. The time now is 2:48 am. |
Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC