UEFI 的字符串处理函数

ASCII 字符串结尾‘\0',ascii码为0 ,为NULL

AsciiSPrint:使用该函数生成Ascii字符串

CHAR8 asciitemp[2];
AsciiSPrint(asciitemp, sizeof(asciitemp), "%d",temp);

AsciiStrCat :将SOURCE 的字符串粘贴到Destination,注意Destination的空间要分配够

AsciiStrCat(OemBootOption,EndOfOemBootOption);

CHAR8 *
EFIAPI
AsciiStrCat (
  IN OUT CHAR8    *Destination,
  IN CONST CHAR8  *Source
  )

AsciiStrStr :查找String是否在SearhString中存在,如果不存在,返回NULL(0),其他为存在

CHAR8 *
EFIAPI
AsciiStrStr (
  IN      CONST CHAR8               *String,
  IN      CONST CHAR8               *SearchString
  )

 StrStr:这是Unicode类型的查找

CHAR16 *
EFIAPI
StrStr (
  IN      CONST CHAR16              *String,
  IN      CONST CHAR16              *SearchString
  )

  AsciiStrToUnicodeStr:将Ascii码字符串转换成Unicode字符串

CHAR16 *
EFIAPI
AsciiStrToUnicodeStr (
  IN      CONST CHAR8               *Source,
  OUT     CHAR16                    *Destination
  )
CHAR16 hellworld[32];AsciiStrToUnicodeStr("Hello World",helloworld);

调用之后helloworld数组包含字符串L"Hello world“

StrHexToUintn :

UINTN
EFIAPI
StrHexToUintn (
  IN      CONST CHAR16              *String
  )

StrHexToUintn (L"1f") 或者StrHexToUintn (L"0x1f") 都将返回UINTN = 0x1f

StrDecimalToUintn :

UINTN
EFIAPI
StrDecimalToUintn (
  IN      CONST CHAR16              *String
  )
{

StrDecimalToUintn(L"1f")返回 UINTN = 1

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值