指针的使用场景实例

1.求一个字符串数组中,一个字符串的所在索引

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

#define  DIM(a) (sizeof(a)/sizeof(*a))

int searchKeyTable(const char *table[],const int size,const char* key,int* pos){
    int rv =0;
    int i = 0;
    int inum = 0;
    if (table ==NULL||key == NULL || pos == NULL) {
        rv = -1;
        printf("table ==NULL||key == NULL || pos == NULL");
    }
  //  inum = (sizeof(table));//table在这里退化为一个内存指针.
    printf("inum-->%d",inum);
    for (int  i = 0; i<size; i++) {
        if (strcmp(key,table[i]) == 0) { //比较两个字符串大小 等于0表示字符串相等.
            *pos = i;
            return rv;
        }
    }
    
    /**
     *  没有找到
     */
    if (i == size) {
        *pos = -1;
    }
    return rv;
}

int main(int argc, const char * argv[]) {
    // insert code here...
    printf("Hello, World!\n");
    
 //   int inum = 0;
    int pos = 0;

    
    /**
     *  指针数组
     */
    const char *c_keyword[] = {
        "while",
        "case",
        "static",
        "do"
    };
    
    
    int result = searchKeyTable(c_keyword, DIM(c_keyword), "static", &pos);//数组作为函数参数,传递数组的长度
    if (result == 0) {
        printf("--->%d\n",pos);
    }
    return 0;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,270评论 0 4
  • 本章内容 使用对象 创建并操作数组 理解基本的 JavaScript 类型 使用基本类型和基本包装类型 引用类型的...
    闷油瓶小张阅读 697评论 0 0
  • 今天打牌,我们又输了。赢的依然是皮蛋公主,真是没劲。 出完大鬼,我就剩一张,以为自己能稳赢。结果皮蛋公主丢出一张黑...
    文盲读书1阅读 757评论 12 7
  • 又来到了这个车站。 依旧是人流拥挤。 有人在买票,有人在赶着上车,有人席地而坐,有人在发着呆。 有人在看着这些人。...
    梦饮酒者阅读 145评论 0 0
  • 这是逛外网看见的一篇文章,英文题目就是这个意思,教人怎么处理分手后的局面,毕竟按原文所说,如果分手后仍然为之前的关...
    灯灯007阅读 338评论 2 0