第一篇文章

简介: FIRST ARTICLE.

This is first article, just for test this blog.

从下面的插入代码可以看出,这个代码插入的功能,很是不足。Tab 键被滤掉了。只能用空格进行缩进。

#include <stdio.h>
void ParseHardwareID(LPCTSTR pHardwareID, LPTSTR pVID, int cchVID, LPTSTR pPID, int cchPID);
int main(int argc, char* argv[])
{
    //main 函数里是用 4 个空格进行缩进的。
    TCHAR VID[8], PID[8];

    ParseHardwareID(_T("USB\VID_046D&PID_0826&REV_0010&MI_02"), 
        VID, _ARRAYSIZE(VID), PID, _ARRAYSIZE(PID));

    _tprintf_s(_T("VID: %s, PID: %s;\n"), VID, PID);

    printf("你们觉得这里好用吗?");
    return 0;
}

void ParseHardwareID(LPCTSTR pHardwareID, LPTSTR pVID, int cchVID, LPTSTR pPID, int cchPID)
{
bool bVIDFound = false;
bool bPIDFound = false;
const TCHAR *p1 = pHardwareID;
const TCHAR *pStopPos = NULL;
int cchCopy = 0;
while(*p1)
{
if(!bVIDFound && _tcsnicmp(p1, _T("VID_"), 4) == 0)
{
pStopPos = p1 + 4;
while(*pStopPos != 0 && *pStopPos != _T('&'))
{
++pStopPos;
}
cchCopy = min(cchVID - 1, pStopPos - p1 - 4);
_tcsncpy_s(pVID, cchVID, p1 + 4, cchCopy);

//append null-terminator;
pVID[cchCopy] = 0;

p1 = pStopPos;
bVIDFound = true;
continue;
}

if(!bPIDFound && _tcsnicmp(p1, _T("PID_"), 4) == 0)
{
pStopPos = p1 + 4;
while(*pStopPos != 0 && *pStopPos != _T('&'))
{
++pStopPos;
}
cchCopy = min(cchPID - 1, pStopPos - p1 - 4);
_tcsncpy_s(pPID, cchPID, p1 + 4, cchCopy);

//append null-terminator;
pPID[cchCopy] = 0;

p1 = pStopPos;
bPIDFound = true;
}
if(bVIDFound && bPIDFound)
break;
++p1;
}
if(!bVIDFound) pVID[0] = 0;
if(!bPIDFound) pPID[0] = 0;
}


我的博客园博客:    http://www.cnblogs.com/hoodlum1980

我的知乎个人主页: hoodlum1980


-- hoodlum1980
目录
相关文章
|
JavaScript Java 测试技术
基于ssm+vue.js+uniapp小程序的超市货品信息管理系统附带文章和源代码部署视频讲解等
基于ssm+vue.js+uniapp小程序的超市货品信息管理系统附带文章和源代码部署视频讲解等
166 5
北京市经开区对首次通过国家级大模型备案一次性奖励100万!
北京市为推动人工智能产业发展,出台了多项政策支持大模型及AI企业。经济技术开发区提供算力服务补贴(最高2000万)、数据集建设支持(最高200万)等;经信局推出算力券补贴(最高200万/年)。海淀区对通用和垂直大模型给予资金补贴(最高1000万)。石景山区则提供算力建设、应用、房租等多方面补贴(最高1000万),并强调智算中心建设。这些政策有效降低了研发成本,促进了技术创新与产业升级,助力北京在全球AI领域领先。
|
机器学习/深度学习 缓存 PyTorch
pytorch学习一(扩展篇):miniconda下载、安装、配置环境变量。miniconda创建多版本python环境。整理常用命令(亲测ok)
这篇文章是关于如何下载、安装和配置Miniconda,以及如何使用Miniconda创建和管理Python环境的详细指南。
10068 0
pytorch学习一(扩展篇):miniconda下载、安装、配置环境变量。miniconda创建多版本python环境。整理常用命令(亲测ok)
|
监控 前端开发 数据库连接
Zabbix 5.0 LTS的web界面安装及修改zabbix web管理员的默认密码
这篇文章是关于如何安装Zabbix 5.0 LTS的web界面以及如何修改Zabbix web管理员默认密码的教程。
1629 1
|
Python
抽卡程序模拟
抽卡程序模拟
441 0
|
消息中间件 Kafka Shell
docker安装zk和kafka实战笔记
docker安装zk和kafka实战笔记
391 0
docker安装zk和kafka实战笔记
|
设计模式 存储 运维
趣解设计模式之《庞大的组织架构带来的烦恼》
趣解设计模式之《庞大的组织架构带来的烦恼》
186 0
ts重点学习33-类型别名
ts重点学习33-类型别名
272 0
ts重点学习33-类型别名
|
前端开发 JavaScript 容器
【一个让你停不下来的动效】——难道不来瞅瞅?(含源码+思路)
【一个让你停不下来的动效】——难道不来瞅瞅?(含源码+思路)
307 0
【一个让你停不下来的动效】——难道不来瞅瞅?(含源码+思路)
|
机器学习/深度学习 人工智能 编解码
7 Papers & Radios | Meta AI首个多模态自监督算法;牛津、谷歌等撰文综述AutoRL
7 Papers & Radios | Meta AI首个多模态自监督算法;牛津、谷歌等撰文综述AutoRL
404 0
7 Papers & Radios | Meta AI首个多模态自监督算法;牛津、谷歌等撰文综述AutoRL