C/C++ strtol函数

最后更新于:2020-07-08 22:08:51

一.strtol函数简介

stdlib.hatoi或者atol函数,可用于将char字符串转为int/long整数类型,而今天要介绍另外一个C语言函数-strtol函数,同样也能将char字符串转为int/long整数类型并且还能获取字符串中的非数字部分,语法如下:

/*
*描述:把参数 str 所指向的字符串根据给定的 base 转换为一个长整数(类型为 long int 型),base 必须介于 2 和 36(包含)之间,或者是特殊值 0,一般设置为2/8/10/16其中之一;
*
*参数: 
*   [in] nptr:字符串类型;
*   [out] endptr:字符串类型;
*   [in] base:设置输出结果的类型,一般设置为2(二进制)/8(八进制)/10(十进制)/16(十六进制)其中之一;
*   
*返回值:返回char类型对应的long int 类型,如果没有执行有效的转换,则返回一个零值;
*/

long int strtol(const char *str, char **endptr, int base)

二.strtol函数函数实战

/************************************************************************/
/*@文件名      : strtol.cpp
/*@日  期      : 2020/6/22 19:37
/*@作  者      : 猿说编程
/*@公众号      : 猿说编程
/*@博客        : www.shuopython.com
/*@描述        : strtol函数用法 - C/C++教程
/************************************************************************/

#include "stdafx.h"
#include <stdio.h>
#include "windows.h"

#pragma warning(disable: 4996)

int _tmain(int argc, _TCHAR* argv[])
{
    char str[30] = "5201314www.shuopython.com";
    char *ptr;
    long ret;

    ret = strtol(str, &ptr, 10);
    printf("数字long int是 %ld\n", ret);
    printf("字符串部分是 |%s|\n", ptr);

    system("pause");

    return 0;
}

输出
数字long int是 5201314
字符串部分是 |www.shuopython.com|
请按任意键继续. . .


注意占位符的使用:

float/double浮点是使用 %f
int整数是使用 %d
long int整数是使用 %ld
char字符是使用 %c
char字符串是使用 %s


猜你喜欢

1. 三目运算符

2. 逗号表达式

3. goto语句

4. 自加自减运算符(++i/i++)

5. unicode和多字节区别




转载请注明: 猿说编程 » C/C++教程 » strtol函数



技术交流、商务合作请直接联系博主
扫码或搜索:猿说编程

python/C++教程

猿说编程
微信公众号 扫一扫关注

赞赏

微信赞赏支付宝赞赏