当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C/C++ atol(), atoll() and atof()用法及代码示例


  1. atol():此函数将作为参数传递给函数调用的C-type字符串转换为长整数。它解析C-string str,将其内容解释为整数,并作为long int类型的值返回。该函数丢弃出现在字符串开头的空白字符,直到找到非空白字符为止。如果C-string str中的非空白字符序列不是有效的整数,或者由于str为空或仅包含空白字符而不存在这样的序列,则不执行任何转换并返回零。

    用法:

    long int atol ( const char * str )
    

    参数:该函数接受一个强制性参数str,它是整数的表示形式。

    返回值:该函数将转换后的整数返回为long int。如果无法执行有效的转换,则返回零。


    // CPP program to illustrate 
    // working of atol() function. 
    #include <bits/stdc++.h> 
    using namespace std; 
      
    int main() 
    { 
        // char array of numbers 
        char str1[] = "5672345"; 
      
        // Function calling to convert to a long int 
        long int num1 = atol(str1); 
      
        cout << "Number is " << num1 << "\n"; 
      
        // char array of numbers of spaces 
        char str2[] = "10000002  0"; 
      
        // Function calling to convert to a long int 
        long int num2 = atol(str2); 
      
        cout << "Number is " << num2 << "\n"; 
        return 0; 
    }
    输出:
    Number is 5672345
    Number is 10000002
    
  2. atoll():此函数将作为参数传递给函数调用的C-type字符串转换为long long整数。它解析C-string str,将其内容解释为整数,并作为long long int类型的值返回。该函数丢弃出现在字符串开头的空白字符,直到找到非空白字符为止。
    如果C-string str中的非空白字符序列不是有效的整数,或者由于str为空或仅包含空白字符而不存在这样的序列,则不执行任何转换并返回零。

    用法:

    long long int atoll ( const char * str )
    

    参数:该函数接受强制性参数str,该参数表示整数。

    返回值:该函数将转换后的整数返回为long long int。如果无法执行有效的转换,则返回零。

    // CPP program to illustrate 
    // working of atol() function. 
    #include <bits/stdc++.h> 
    using namespace std; 
      
    int main() 
    { 
        // char array of numbers 
        char big_num1[] = "8239206483232728"; 
      
        // Function calling to convert to a long int 
        long long int num1 = atoll(big_num1); 
      
        cout << "Number is " << num1 << "\n"; 
      
        // char array of numbers of spaces 
        char big_num2[] = "100000 9 1324100"; 
      
        // Function calling to convert to a long int 
        long long int num2 = atoll(big_num2); 
      
        cout << "Number is " << num2 << "\n"; 
        return 0; 
    }
    输出:
    Number is 8239206483232728
    Number is 100000
    
  3. atof()函数:此函数将作为参数传递给函数调用的C-type字符串转换为双精度。它解析C-string str,将其内容解释为浮点数,该浮点数作为double类型的值返回。该函数丢弃出现在字符串开头的空白字符,直到找到非空白字符为止。如果C-string str中的非空白字符序列不是有效的浮点数,或者由于str为空或仅包含空白字符而不存在这样的序列,则不执行任何转换并返回0.0。

    用法:

    double atol ( const char * str )
    

    参数:该函数接受单个强制参数str,该参数表示浮点数。

    返回值:该函数将转换后的浮点数作为双精度值返回。如果无法执行有效的转换,则该函数将返回零(0.0)。

    返回值:

    // CPP program to illustrate 
    // working of atol() function. 
    #include <bits/stdc++.h> 
    using namespace std; 
      
    int main() 
    { 
        // char array 
        char pi[] = "3.1415926535"; 
      
        // Calling function to convert to a double 
        double pi_val = atof(pi); 
      
        // prints the double value 
        cout << "Value of pi = " << pi_val << "\n"; 
      
        // char array 
        char acc_g[] = "9.8"; 
      
        // Calling function to convert to a double 
        double acc_g_val = atof(acc_g); 
      
        // prints the double value 
        cout << "Value of acceleration due to gravity = "
             << acc_g_val << "\n"; 
        return 0; 
    }
    输出:
    Value of pi = 3.14159
    Value of acceleration due to gravity = 9.8
    


相关用法


注:本文由纯净天空筛选整理自nik1996大神的英文原创作品 atol(), atoll() and atof() functions in C/C++。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。