pStr->pContent = NULL;
return pStr;
}
//统计字符串长度
pStr->wLength = 0;
pStr->pContent = pContent;
while (*pStr->pContent++)
{
pStr->wLength++;
}
//尝试为字符串内容分配内存
if (!(pStr->pContent = GuiMemAlloc((pStr->wLength + 1) << 1)))
{
GuiMemFree(pStr);
PRINT_INF(CreateStringDirect Err1!);
return NULL;
}
//写入字符串内容
mEMCpy(pStr->pContent, pContent, (pStr->wLength + 1) << 1);
//计算字符串宽度
if (_StringObjectFill(pStr))
{
GuiMemFree(pStr->pContent);
GuiMemFree(pStr);
PRINT_INF(CreateStringDirect Err2!);
return NULL;
}
return pStr;
}
上一篇:解析嵌入式系统串扰问题