C语言strtol

本文介绍了C语言中strtol函数的使用,包括其原型long int strtol(const char* str, char** endptr, int base)。重点强调了第二个参数是一个二级指针,以及如何通过strtol进行结束符判断。" 50464766,5597893,打印机密码恢复:oj-0860问题解析,"['编程题目', '字符串算法', 'C++编程', '算法实现']
摘要由CSDN通过智能技术生成

函数原型:

long int strtol (const char* str, char** endptr, int base);
注意第二个形参是二级指针,如果定义char *stop,那么要出入&stop

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

int main(void)
{
    const char *str = "10 200000000000000000000000000000 30 -40 junk";
    const char *begin = str;
    printf("Parsing '%s', begin addr = %p:\n\n", begin, begin);
    char *stop;
    long i = strtol(begin, &stop, 10);
    while (begin != stop)
    {
        printf("begin: %p\n", begin);
        printf("stop: %p\n", stop);
        printf("'%.*s' -> %ld\n", (int)(stop-begin), begin, i);

        char *message = strerror(errno);
        if (message != NULL) {
            printf("%s\n\n", message);
            errno = 0;
        }

        begin = stop;
        i = strtol(begin, &a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值