zoukankan      html  css  js  c++  java
  • C函数之index、strtoul

     index函数

    函数定义:

    #include<strings.h>
    
    char *index(const char *s, int c);

    函数说明:

    找出参数s字符串中第一个出现参数c的地址,然后将该字符串出现的地址返回。字符串结束字符(NULL)也视为字符串的一部分。

    返回值:

    如果找到指定的字符,则返回字符所在地址,否则返回NULL

    实例:

    /***
    index.c
    ***/
    #include<stdio.h>
    #include<strings.h>
    
    int main()
    {
        char *s = "abcdef1234567abcdef";
        char *p = NULL;
    
        p = index(s, 'b');
        printf("%s
    ",p);
        return 0;
    }

    运行结果:

     

    strtoul函数

    函数原型:

    #include<stdlib.h>
    
    unsigned long int strtoul(const char *nptr, char **endptr, int base);
    
    unsigned long long int strtoull(const char *nptr, char **endptr,int base);

    参数介绍:

    nptr:    字符串起始位置

    endptr: 返回字符串有效数字的结尾地址。如123456fe789,则返回f的地址。

    base:   转化基数。范围2~36,或0代表nptr采用的进制方式。

    功能描述:

    把输入的字符串转换成数字,该函数会扫描参数nptr字符串,跳过签过的空白字符(例如空格,tab键,可以通过isspace()函数来检测),知道遇到数字或正负符号才开始转换,在遇到非数字或字符串结束时(’’)结束转换,并将结果返回。

    注意:

    当 base 的值为 0 时,默认采用 10 进制转换,但如果遇到 '0x' / '0X' 前置字符则会使用 16 进制转换,遇到 '0' 前置字符则会使用 8 进制转换。

    若 endptr 不为NULL,则会将遇到的不符合条件而终止的字符指针由 endptr 传回;若 endptr 为 NULL,则表示该参数无效,或不使用该参数。

    实例1:

    输入字符串,base值为2,二进制转换。

    /***
    strtoul_base2.c
    ***/
    #include<stdio.h>
    #include<stdlib.h>
    
    int main()
    {
        char buffer[256];
        unsigned long lu;
        char *endptr;
    
        while(1)
        {
            printf("Enter an unsigned number: ");
            fgets(buffer, 256, stdin);
            lu = strtoul(buffer, &endptr, 2);
            printf("Value entered:%lu, the address of first invalid character is %d, invalid characer = %s
    ",
                    lu,endptr,endptr);
        }
    
        return 0;
    }
  • 相关阅读:
    linux下vim命令详解
    Linux 指令篇:档案目录管理chown
    分级渲染百度地图路段红黄绿功能
    矢量数据的属性值的添加、编辑、删除
    Extjs+C# 文件上传
    IBATIS 的动态SQL语句拼接
    一个DIV位于另一个div的右下角
    ArcGIS JavaScript API 添加点
    将Excel数据导入至SqlServer中
    Extjs 图表控件,可修改X轴与Y轴坐标
  • 原文地址:https://www.cnblogs.com/wanghao-boke/p/11821533.html
Copyright © 2011-2022 走看看