English 中文(简体)
为什么总产出为0.0000?
原标题:Why does strtof always output 0.0000?

用浮动点号码打strtof,对我的当地机器,但学校的服务器机体总回报0.000000。 我检查了<代码>errno是否有任何储存。 既然0就意味着错误,但它说是成功的。 是否有任何人认为这样做?

这里是法典。

#include <stdlib.h>
#include <stdio.h>

int main(int argc, char *argv[])
{
    printf("%f
", strtof(argv[1],0));
    return 0;
}
最佳回答

短版:编为-std=gnu99-std=c99。 解释如下。

我在自己的盒子上转载了类似的“问题”。 然而,当我试图汇编:

# gcc -Wall -o float float.c
float.c: In function  main :
float.c:6: warning: implicit declaration of function  strtof 
float.c:6: warning: format  %f  expects type  double , but argument 2 has type  int 

因此,我研究了<代码>man。 网页strtof(

SYNOPSIS
   #include <stdlib.h>

   double strtod(const char *nptr, char **endptr);

   #define _XOPEN_SOURCE=600   /* or #define _ISOC99_SOURCE */
   #include <stdlib.h>

   float strtof(const char *nptr, char **endptr);
   long double strtold(const char *nptr, char **endptr);

这意味着这些数值之一必须成为<条码>,在列入<条码>tdlib.h之前。 然而,我只是重新编篡了-std=gnu99,界定了我及其工作之一。

# gcc -std=gnu99 -Wall -o float float.c
# ./float 2.3
2.300000

薪金:总编辑<代码>-Wall;-

问题回答

您是否包括斯特鲁夫(stdlib.h)定义的头盔,否则,你可能获得0.0,因为C的未知职能被作为返回地对待。





相关问题
Simple JAVA: Password Verifier problem

I have a simple problem that says: A password for xyz corporation is supposed to be 6 characters long and made up of a combination of letters and digits. Write a program fragment to read in a string ...

Case insensitive comparison of strings in shell script

The == operator is used to compare two strings in shell script. However, I want to compare two strings ignoring case, how can it be done? Is there any standard command for this?

Trying to split by two delimiters and it doesn t work - C

I wrote below code to readin line by line from stdin ex. city=Boston;city=New York;city=Chicago and then split each line by ; delimiter and print each record. Then in yet another loop I try to ...

String initialization with pair of iterators

I m trying to initialize string with iterators and something like this works: ifstream fin("tmp.txt"); istream_iterator<char> in_i(fin), eos; //here eos is 1 over the end string s(in_i, ...

break a string in parts

I have a string "pc1|pc2|pc3|" I want to get each word on different line like: pc1 pc2 pc3 I need to do this in C#... any suggestions??

Quick padding of a string in Delphi

I was trying to speed up a certain routine in an application, and my profiler, AQTime, identified one method in particular as a bottleneck. The method has been with us for years, and is part of a "...

热门标签