代码拉取完成,页面将自动刷新
/*
*
* GSGUtil.cpp
*
* Copyright (C) 2021-2024 SuperMap Software Co., Ltd.
*
* Yukon is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; If not, see <http://www.gnu.org/licenses/>. *
*/
#include "GSGUtil.h"
/**
* @brief 将合法的小写字母转换成大写帘字母
*/
static char char_toupper(int in)
{
if (in < 0 || in > 127)
return '.';
if (in >= 'a' && in <= 'z')
{
return in - ('a' - 'A');
}
return in;
}
/**
* @brief 将 cstring 类型转换未 textp 类型
* @note 在 sql 定义的函数中,不支持 cstring 类型
* @param cstring
* @return text*
*/
/**
* @brief 将 hex 转换成可显示的 char
*
* @param c
* @return unsigned
*/
static unsigned char _Hex2Char(unsigned char c)
{
if (c == 0)
{
return '0';
}
else if (c < 0xa)
{
return c + 0x30;
}
else
{
return c + 0x37;
}
}
/**
* @brief
*
* @param src 要转换的 hex
* @param dst 转换后的字符
*/
void Hex2Char(unsigned char src, unsigned char *dst)
{
dst[1] = _Hex2Char(src >> 4);
dst[0] = _Hex2Char(src & 0x0f);
}
/**
* @brief 将字符转换成 Hex '01'->1 'fa'->fa
*
* @param c
* @return unsigned
*/
unsigned char _Char2Hex(const unsigned char c)
{
unsigned char t = char_toupper(c);
if (t == '0')
{
return 0;
}
else if (t >= 'A' && t <= 'F')
{
return t - 0x37;
}
else
{
return t - 0x30;
}
}
unsigned char Char2Hex(const unsigned char *c)
{
return (_Char2Hex(c[0]) << 4) + _Char2Hex(c[1]);
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。