计算字符c第一次出现在字符数组src的下标

来源:互联网 发布:java工程师累吗 编辑:程序博客网 时间:2024/06/14 08:21
#include<stdio.h>#include<string.h>/* 功能:计算字符c第一次出现在字符数组src的下标 *example: strcgap("abc", 'c') 返回2 * 参数:src,源字符串;c,字符; * 返回值:若c在src中返回字符c第一次出现在字符数组src的下标,范围:[0,strlen(src)-1] *   失败返回-1。 */int strcindex(const char *src, char c){const char *p;int pos, len;if( NULL == src ){return -1;}p = src;pos = 0;len = strlen(src);while( c != *p && *p && len != 0 ) {pos++;p++;len--;}if(len <= 0)//没有此字符pos = -1;return pos; }int main(){char s[100]={0};printf("strcindex(\"123456789\", '1'):%d\n", strcindex("123456789", '1'));printf("strcindex(\"12345556789\", '5'):%d\n", strcindex("12345556789", '5'));printf("strcindex(\"123456789\", '9'):%d\n", strcindex("123456789", '9'));printf("strcindex(\"123456789\", 'a'):%d\n", strcindex("123456789", 'a'));printf("strcindex(\"123456789\", '\\0'):%d\n", strcindex("123456789", '\0'));printf("\n");strcpy(s, "123456789");printf("strchr(s, '1')-s:%d\n", strchr(s, '1')-s);printf("strchr(s, '5')-s:%d\n", strchr(s, '5')-s);printf("strchr(s, '9')-s:%d\n", strchr(s, '9')-s);printf("strchr(s, 'a')-s:%d\n", strchr(s, 'a')-s);return 0;}

0 0