|
本帖最后由 易团雪 于 2024-5-18 13:53 编辑
1、宽窄字符串类型指针的定义:
● 窄字节:字符型A *p_str = "hello"
● Unicode宽字节:字符型*p_wstr = "hello"
2、常用的宽窄字节字符串处理函数:
字符串长度:
● Ansi:正整型 文本取长度A(常量 字符型A* 文本数据)
● Unicode:正整型 文本取长度(常量 字符型* 文本数据)
字符串到整数:
● Ansi:整型 文本A到整型(常量 字符型A* _String)
● Unicode:整型 文本到整型(常量 字符型* pText)
字符串拷贝:
● Ansi:errno_t 文本复制A(字符型A* 目标文本, 正整型 字节, 常量 字符型A* 源文本)
● Unicode:errno_t 文本复制(字符型* 目标文本, 正整型 字节, 常量 字符型* 源文本)
3、取类型大小-英文名:sizeof 求宽窄字节字符串的注意事项:
字符型A* p_str = "hello";
我想求这个字符串所占用的字节数:取类型大小(p_str) 肯定是错误的!
文本取长度A(p_str) + 1,实际上就是 p_str 指针指向的字符串所占用的空间对吧?因为本身1个字符型A占用1个字节的存储空间,所以默认字符串的长度加上字符串的结束符 \0 就是字符串所占用的字节数。
那么宽字节呢?字符型* p_wstr = "hello";
他占用的字节数应该如何来求?
文本取长度(p_str) + 1 这个对吗?当然也是不对的,正确的是:(文本取长度(p_str) + 1) * 取类型大小(字符型)
|
|