zoukankan      html  css  js  c++  java
  • 字符串函数

     字符串的函数
    2012-02-12 15:59:20

    函数名: strcat 
    功  能: 字符串拼接函数 
    用  法: char *strcat(char *destin, char *source); 
    程序例:

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

    int main(void) 

       char destination[25]; 
       char *blank = " ", *c = "C++", *Borland = "Borland";

       strcpy(destination, Borland); 
       strcat(destination, blank); 
       strcat(destination, c);

       printf("%s\n", destination); 
       return 0; 

      
      
     

    函数名: strchr 
    功  能: 在一个串中查找给定字符的第一个匹配之处\ 
    用  法: char *strchr(char *str, char c); 
    程序例:

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

    int main(void) 
     { 
        char string[15]; 
        char *ptr, c = 'r';

        strcpy(string, "This is a string"); 
        ptr = strchr(string, c); 
        if (ptr) 
           printf("The character %c is at position: %d\n", c, ptr-string);//注意 ptr-string啊
        else 
           printf("The character was not found\n"); 
        return 0; 
     } 
      
      
     

    函数名: strcmp 
    功  能: 串比较 
    用  法: int strcmp(char *str1, char *str2); 
    看Asic码,str1>str2,返回值 > 0;两串相等,返回0
    程序例:

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

    int main(void) 
     { 
        char *buf1 = "aaa", *buf2 = "bbb", *buf3 = "ccc"; 
        int ptr;

        ptr = strcmp(buf2, buf1); 
        if (ptr > 0) 
           printf("buffer 2 is greater than buffer 1\n"); 
        else 
           printf("buffer 2 is less than buffer 1\n");

        ptr = strcmp(buf2, buf3); 
        if (ptr > 0) 
           printf("buffer 2 is greater than buffer 3\n"); 
        else 
           printf("buffer 2 is less than buffer 3\n");

        return 0; 
     } 
      
      
     

    函数名: strncmpi 

    功  能: 将一个串中的一部分与另一个串比较, 不管大小写 
    用  法: int strncmpi(char *str1, char *str2, unsigned maxlen); 

      用法:#include <string.h>

      功能:比较字符串s1和s2的前n个字符但不区分大小写。

      说明:strncmpi是到strnicmp的宏定义

      当s1<s2时,返回值<0

      当s1=s2时,返回值=0

      当s1>s2时,返回值>0

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

    int main(void) 

       char *buf1 = "BBB", *buf2 = "bbb"; 
       int ptr;

       ptr = strcnmpi(buf2, buf1);

       if (ptr > 0) 
          printf("buffer 2 is greater than buffer 1\n");

       if (ptr < 0) 
          printf("buffer 2 is less than buffer 1\n");

       if (ptr == 0) 
          printf("buffer 2 equals buffer 1\n");

       return 0; 

      
      
     

    函数名: strcpy 
    功  能: 串拷贝 
    用  法: char *strcpy(char *str1, char *str2); 
    程序例:

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

    int main(void) 
     { 
        char string[10]; 
        char *str1 = "abcdefghi";

        strcpy(string, str1); 
        printf("%s\n", string); 
        return 0; 
     } 
      
      
     

    函数名: strcspn 
    功  能: 在串中查找第一个给定字符集内容的段 
    用  法: int strcspn(char *str1, char *str2); 
    程序例:

    #include <stdio.h> 
    #include <string.h> 
    #include <alloc.h>

    int main(void) 
     { 
        char *string1 = "1234567890"; 
        char *string2 = "747DC8"; 
        int length;

        length = strcspn(string1, string2); 
        printf("Character where strings intersect is at position %d\n", length);

        return 0; 
     } 
      
      
     

    函数名: strdup 
    功  能: 将串拷贝到新建的位置处 
    用  法: char *strdup(char *str); 
    程序例:

    #include <stdio.h> 
    #include <string.h> 
    #include <alloc.h>

    int main(void) 
     { 
        char *dup_str, *string = "abcde";

        dup_str = strdup(string); 
        printf("%s\n", dup_str); 
        free(dup_str);

        return 0; 
     } 
      
      
     

    函数名: stricmp 
    功  能: 以大小写不敏感方式比较两个串 
    用  法: int stricmp(char *str1, char *str2); 
    程序例:

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

    int main(void) 

       char *buf1 = "BBB", *buf2 = "bbb"; 
       int ptr;

       ptr = stricmp(buf2, buf1);

       if (ptr > 0) 
          printf("buffer 2 is greater than buffer 1\n");

       if (ptr < 0) 
          printf("buffer 2 is less than buffer 1\n");

       if (ptr == 0) 
          printf("buffer 2 equals buffer 1\n");

       return 0; 

      
     

    函数名: strerror 
    功  能: 返回指向错误信息字符串的指针 
    用  法: char *strerror(int errnum); 
    程序例:

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

    int main(void) 

       char *buffer; 
       buffer = strerror(errno); 
       printf("Error: %s\n", buffer); 
       return 0; 

      
      
     

    函数名: strcmpi 
    功  能: 将一个串与另一个比较, 不管大小写 
    用  法: int strcmpi(char *str1, char *str2); 
    程序例:

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

    int main(void) 

       char *buf1 = "BBB", *buf2 = "bbb"; 
       int ptr;

       ptr = strcmpi(buf2, buf1);

       if (ptr > 0) 
          printf("buffer 2 is greater than buffer 1\n");

       if (ptr < 0) 
          printf("buffer 2 is less than buffer 1\n");

       if (ptr == 0) 
          printf("buffer 2 equals buffer 1\n");

       return 0; 

      
      
     

    函数名: strncmp 
    功  能: 串比较 
    用  法: int strncmp(char *str1, char *str2, int maxlen); 
    程序例:

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

    int  main(void)


       char *buf1 = "aaabbb", *buf2 = "bbbccc", *buf3 = "ccc"; 
       int ptr;

       ptr = strncmp(buf2,buf1,3); 
       if (ptr > 0) 
          printf("buffer 2 is greater than buffer 1\n"); 
       else 
          printf("buffer 2 is less than buffer 1\n");

       ptr = strncmp(buf2,buf3,3); 
       if (ptr > 0) 
          printf("buffer 2 is greater than buffer 3\n"); 
       else 
          printf("buffer 2 is less than buffer 3\n");

       return(0); 

      
     

    函数名: strncmpi 
    功  能: 把串中的一部分与另一串中的一部分比较, 不管大小写 
    用  法: int strncmpi(char *str1, char *str2); 
    程序例:

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

    int main(void) 

       char *buf1 = "BBBccc", *buf2 = "bbbccc"; 
       int ptr;

       ptr = strncmpi(buf2,buf1,3);

       if (ptr > 0) 
          printf("buffer 2 is greater than buffer 1\n");

       if (ptr < 0) 
          printf("buffer 2 is less than buffer 1\n");

       if (ptr == 0) 
          printf("buffer 2 equals buffer 1\n");

       return 0; 

      
     

    函数名: strncpy 
    功  能: 串拷贝 
    用  法: char *strncpy(char *destin, char *source, int maxlen); 
    程序例:

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

    int main(void) 

       char string[10]; 
       char *str1 = "abcdefghi";

       strncpy(string, str1, 3); 
       string[3] = '\0'; 
       printf("%s\n", string); 
       return 0; 

      
     

    函数名: strnicmp 
    功  能: 不注重大小写地比较两个串 
    用  法: int strnicmp(char *str1, char *str2, unsigned maxlen); 
    程序例:

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

    int main(void) 

       char *buf1 = "BBBccc", *buf2 = "bbbccc"; 
       int ptr;

       ptr = strnicmp(buf2, buf1, 3);

       if (ptr > 0) 
          printf("buffer 2 is greater than buffer 1\n");

       if (ptr < 0) 
          printf("buffer 2 is less than buffer 1\n");

       if (ptr == 0) 
          printf("buffer 2 equals buffer 1\n");

       return 0; 

      
      
     

    函数名: strnset 
    功  能: 将一个串中的所有字符都设为指定字符 
    用  法: char *strnset(char *str, char ch, unsigned n); 
    程序例:

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

    int main(void) 

       char *string = "abcdefghijklmnopqrstuvwxyz"; 
       char letter = 'x';

       printf("string before strnset: %s\n", string); 
       strnset(string, letter, 13); 
       printf("string after  strnset: %s\n", string);

       return 0; 

      
     

    函数名: strpbrk 
    功  能: 在串中查找给定字符集中的字符 
    用  法: char *strpbrk(char *str1, char *str2); 
    程序例:

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

    int main(void) 

       char *string1 = "abcdefghijklmnopqrstuvwxyz"; 
       char *string2 = "onm"; 
       char *ptr;

       ptr = strpbrk(string1, string2);

       if (ptr) 
          printf("strpbrk found first character: %c\n", *ptr); 
       else 
          printf("strpbrk didn't find character in set\n");

       return 0; 

      
      
     

    函数名: strrchr 
    功  能: 在串中查找指定字符的最后一个出现 
    用  法: char *strrchr(char *str, char c); 
    程序例:

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

    int main(void) 

       char string[15]; 
       char *ptr, c = 'r';

       strcpy(string, "This is a string"); 
       ptr = strrchr(string, c); 
       if (ptr) 
          printf("The character %c is at position: %d\n", c, ptr-string); 
       else 
          printf("The character was not found\n"); 
       return 0; 

      
      
     

    函数名: strrev 
    功  能: 串倒转 
    用  法: char *strrev(char *str); 
    程序例:

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

    int main(void) 

       char *forward = "string";

       printf("Before strrev(): %s\n", forward); 
       strrev(forward); 
       printf("After strrev():  %s\n", forward); 
       return 0; 

     

    函数名: strset 
    功  能: 将一个串中的所有字符都设为指定字符 
    用  法: char *strset(char *str, char c); 
    程序例:

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

    int main(void) 

       char string[10] = "123456789"; 
       char symbol = 'c';

       printf("Before strset(): %s\n", string); 
       strset(string, symbol); 
       printf("After strset():  %s\n", string); 
       return 0; 

      
      
     

    函数名: strspn 
    功  能: 在串中查找指定字符集的子集的第一次出现 
    用  法: int strspn(char *str1, char *str2); 
    程序例:

    #include <stdio.h> 
    #include <string.h> 
    #include <alloc.h>

    int main(void) 

       char *string1 = "1234567890"; 
       char *string2 = "123DC8"; 
       int length;

       length = strspn(string1, string2); 
       printf("Character where strings differ is at position %d\n", length); 
       return 0; 

      
     

    函数名: strstr 
    功  能: 在串中查找指定字符串的第一次出现 
    用  法: char *strstr(char *str1, char *str2); 
    程序例:

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

    int main(void) 

       char *str1 = "Borland International", *str2 = "nation", *ptr;

       ptr = strstr(str1, str2); 
       printf("The substring is: %s\n", ptr); 
       return 0; 

      
     

    函数名: strtod 
    功  能: 将字符串转换为double型值 
    用  法: double strtod(char *str, char **endptr); 
    程序例:

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

    int main(void) 

       char input[80], *endptr; 
       double value;

       printf("Enter a floating point number:"); 
       gets(input); 
       value = strtod(input, &endptr); 
       printf("The string is %s the number is %lf\n", input, value); 
       return 0; 

      
      
     

    函数名: strtok 
    功  能: 查找由在第二个串中指定的分界符分隔开的单词 
    用  法: char *strtok(char *str1, char *str2); 
    程序例:

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

    int main(void) 

       char input[16] = "abc,d"; 
       char *p;

       /* strtok places a NULL terminator 
       in front of the token, if found */ 
       p = strtok(input, ","); 
       if (p)   printf("%s\n", p);

       /* A second call to strtok using a NULL 
       as the first parameter returns a pointer 
       to the character following the token  */ 
       p = strtok(NULL, ","); 
       if (p)   printf("%s\n", p); 
       return 0; 

      
      
     

    函数名: strtol 
    功  能: 将串转换为长整数 
    用  法: long strtol(char *str, char **endptr, int base); 
    程序例:

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

    int main(void) 

       char *string = "87654321", *endptr; 
       long lnumber;

       /* strtol converts string to long integer  */ 
       lnumber = strtol(string, &endptr, 10); 
       printf("string = %s  long = %ld\n", string, lnumber);

       return 0; 

     

    函数名: strupr 
    功  能: 将串中的小写字母转换为大写字母 
    用  法: char *strupr(char *str); 
    程序例:

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

    int main(void) 

       char *string = "abcdefghijklmnopqrstuvwxyz", *ptr;

       /* converts string to upper case characters */ 
       ptr = strupr(string); 
       printf("%s\n", ptr); 
       return 0; 

      
      
     

    函数名: swab 
    功  能: 交换字节 
    用  法: void swab (char *from, char *to, int nbytes); 
    程序例:

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

    char source[15] = "rFna koBlrna d"; 
    char target[15];

    int main(void) 

       swab(source, target, strlen(source)); 
       printf("This is target: %s\n", target); 
       return 0; 
    }

  • 相关阅读:
    Mybatis 原始dao CRUD方法
    JQuery的焦点事件focus() 与按键事件keydown() 及js判断当前页面是否为顶级页面 子页面刷新将顶级页面刷新 window.top.location
    使用actionerror做失败登录验证
    Java项目中的下载 与 上传
    shiro框架 4种授权方式 说明
    javascript 中数组的创建 添加 与将数组转换成字符串 页面三种提交请求的方式
    序列化表单为json对象,datagrid带额外参提交一次查询 后台用Spring data JPA 实现带条件的分页查询 多表关联查询
    Spring data JPA 理解(默认查询 自定义查询 分页查询)及no session 三种处理方法
    orcal 数据库 maven架构 ssh框架 的全注解环境模版 maven中央仓库批量删除lastupdated文件后依然是lastupdated解决方法 mirror aliyun中央仓库
    EasyUI加zTree使用解析 easyui修改操作的表单回显方法 验证框提交表单前验证 datagrid的load方法
  • 原文地址:https://www.cnblogs.com/0803yijia/p/2364065.html
Copyright © 2011-2022 走看看