Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
char[] を float 変数に再帰的に変換する必要があります。私のコードは次のとおりです。
while(1) { //take char[] str as input sscanf(str,"%f",&n); //printf n }
プログラムは正の数に対してうまく機能します。しかし、最初に負の数を与え、その後に正の数を与えると、n は異なる出力を表示します。
Cで書かれた、これは私にとってはうまくいくようです。
char* str = "-9 1.1 2 3.1 0.9 .8 -2 -1.1"; float n; int offset; while (sscanf(str, "%f%n", &n, &offset) > 0) { printf("%f,", n); str += offset; }
出力で-9.000000,1.100000,2.000000,3.100000,0.900000,0.800000,-2.000000,-1.100000,
-9.000000,1.100000,2.000000,3.100000,0.900000,0.800000,-2.000000,-1.100000,