zoukankan      html  css  js  c++  java
  • C++ 字符串转化成浮点型

    第一种:

    [cpp] view plain copy
     
    1. char  szString[] = "3.1415926535898";   
    2. double db1;   
    3. db1 = atof(szString);   
    4. printf("atof result: ");   
    5. printf("%f  %.12f  %.2f  %e  %E ", db1, db1, db1, db1, db1);   
    6. printf("%.1e  %.1E  %.18e  %.18E ", db1, db1, db1, db1);  


     

    第二种:

    [cpp] view plain copy
     
    1. char  szString2[] = "3.1415926535898";   
    2. double db2;   
    3. sscanf(szString2, "%lf", &db2);   
    4. printf(" sscanf result: ");   
    5. printf("%f  %.12f  %.2f  %e  %E ", db2, db2, db2, db2, db2);   
    6. printf("%.1e  %.1E  %.18e  %.18E ", db2, db2, db2, db2);  


    对于sscanf函数还有很多的妙用。给大家看看百科上的使用:

          1. 常见用法。

      char buf[512] ;

      sscanf("123456 ", "%s", buf);//此处buf是数组名,它的意思是将123456以%s的形式存入buf中!

      printf("%s ", buf);

      结果为:123456

     

      2. 取指定长度的字符串。如在下例中,取最大长度为4字节的字符串。

      sscanf("123456 ", "%4s", buf);

      printf("%s ", buf);

      结果为:1234

     

      3. 取到指定字符为止的字符串。如在下例中,取遇到空格为止字符串。

      sscanf("123456 abcdedf", "%[^ ]", buf);

      printf("%s ", buf);

      结果为:123456

      4. 取仅包含指定字符集的字符串。如在下例中,取仅包含1到9和小写字母的字符串。

      sscanf("123456abcdedfBCDEF", "%[1-9a-z]", buf);

      printf("%s ", buf);

      结果为:123456abcdedf

      当输入:

      sscanf("123456abcdedfBCDEF","%[1-9A-Z]",buf);

      printf("%s ",buf);

      结果为:123456

     

      5. 取到指定字符集为止的字符串。如在下例中,取遇到大写字母为止的字符串。

      sscanf("123456abcdedfBCDEF", "%[^A-Z]", buf);

      printf("%s ", buf);

      结果为:123456abcdedf

     

      6、给定一个字符串iios/12DDWDFF@122,获取 / 和 @ 之间的字符串,先将 "iios/"过滤掉,再将非'@'的一串内容送到buf中

      sscanf("iios/12DDWDFF@122", "%*[^/]/%[^@]", buf);

      printf("%s ", buf);

      结果为:12DDWDFF

  • 相关阅读:
    Binary Search Tree Iterator 解答
    Invert Binary Tree 解答
    Min Stack 解答
    Trapping Raining Water 解答
    Candy 解答
    Jump Game II 解答
    Implement Hash Map Using Primitive Types
    Gas Station 解答
    Bucket Sort
    HashMap 专题
  • 原文地址:https://www.cnblogs.com/hushaojun/p/5261090.html
Copyright © 2011-2022 走看看