一、键值对问题:
键值对(“key = value”),顾名思义,每一个键会对应一个值。
二、举个例子
- 身份证号和你本人的绑定关系,在系统中输入身份证号(键)都会对应一个小可爱(值)。
- 咱在登陆微信、游戏或外卖账号时,需要输入手机号验证身份,这时,系统会向该手机号发送一条验证短信。这里的手机号码(键),对应的接收用户就是“值”。
每个键对应着相应的值, 当按下相应的键时, 就会输出相应的结果,那么如何用程序实现呢?
三、代码实例:
(1)编写一个函数,利用函数实现功能,给出接口,主调函数调用;
(2)函数思想:
1、在字符串中查找是否含有关键字
2、再查找是否含有“=”
3、去掉值中的首尾空格
四、程序实现:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
//一般情况下不要修改输入的内存块的值
int trimSpace_ok2(char *mybuf, char *outbuf)//去掉首尾空格函数
{
int count = 0;
int i = 0, j = 0;
char *p = mybuf;
j = strlen(p) -1;
while (p[i]==' ' && p[i] != '\0')
{
i++;
}
while (p[j]==' '&& j>0)
{
j--;
}
count = j-i +1;
memcpy(outbuf, mybuf+i, count);
outbuf[count] = '\0';
return 0;
}
int getKeyByValude(char *keyvaluebuf, char *keybuf, char *valuebuf, int * valuebuflen)
{
char tmp[2048*10];//开辟足够的内存空间,用于存放
int ret=0;
char *p=keyvaluebuf;
if(keyvaluebuf==NULL||keybuf==NULL||valuebuf==NULL||valuebuflen==NULL)
{
ret=-1;
return ret;
}
//第一步:在字符串中查找是否含有关键字
p=strstr(keyvaluebuf,keybuf);
if(p==NULL)
{
return -1;
}
p=p+strlen(keybuf);
//第二步:查找是否含有=
p=strstr(keyvaluebuf,"=");
if(p==NULL)
{
return -1;
}
p=p+1;
第三步:去掉首尾的空格字符串;
ret = trimSpace_ok2(p, tmp);//调用函数实现
if (ret!= 0)
{
printf("func trimSpace_ok2() err:%d\n", ret);
return ret;
}
strcpy(valuebuf, tmp);
*valuebuflen = strlen(tmp);
return 0;
}
void main()
{
int ret=0;
//char value1[]="ORACLE_name="itcast";/*测试1 */
/*char value1[]="oracle_pwd=123456 ";*//*测试2 */
char value1[]="oracle_pwd= 231256";/*测试3*/
char value1[]="orace_pwd= 231256";/*测试4*/
//char key1[]="ORACLE_name";/*测试1的关键字 */
//char key1[]="oracle_pwd";/*测试2 的关键字*/
char key1[]="oracle_pwd";/*测试3的关键字*/
char buf[100]={0};//必须初始化
int len=0;
ret =getKeyByValude(value1,key1, buf, &len);
if(ret!=0)
{
printf("func getKeyByValude() err ,ret=%d\n",ret);
}
printf("buf=%s\n",buf);
printf("len =%d\n",len);
getKeyByValude(value1,key1, buf, &len);
system("pause");
}
五、测试结果:
<1>“ORACLE_name=itcast” “ORACLE_name” itcast
<2>“oracle_pwd=123456” “oracle_pwd” 123456
<3>“oracle_pwd= 231256” “oracle_pwd” 231256
<4>orace_pwd= 231256, 报告出错
今天的文章键值对是什么?_σ键和π键的主要特点[通俗易懂]分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/70273.html