通过ICU4C实现Unicode规范化

通过ICU4C实现Unicode规范化,c,unicode,icu,normalize,C,Unicode,Icu,Normalize,我想使用ICU C接口规范化字符串 看看unorm2_正常化,我有一些问题 unnormalizer2实例--处理完后如何处理它 如果缓冲区不够大,无法进行分解或重新编译,该怎么办?检查错误代码是否为U\U BUFFER\U OVERFLOW\U error的正常方法是什么?U_字符串\U未\U终止\U警告是否适用?结果字符串是否以null结尾?如果返回错误,是否重新分配内存并重试?重新开始似乎是浪费时间 看。注意,您不应该释放通过unorm2_getInstance()获取的实例 通常,大多数

我想使用ICU C接口规范化字符串

看看unorm2_正常化,我有一些问题

  • unnormalizer2实例--处理完后如何处理它

  • 如果缓冲区不够大,无法进行分解或重新编译,该怎么办?检查错误代码是否为U\U BUFFER\U OVERFLOW\U error的正常方法是什么?U_字符串\U未\U终止\U警告是否适用?结果字符串是否以null结尾?如果返回错误,是否重新分配内存并重试?重新开始似乎是浪费时间

  • 看。注意,您不应该释放通过unorm2_getInstance()获取的实例
  • 通常,大多数ICU API都可以传递一个空缓冲区和0长度作为输入,这将导致U_buffer_OVERLOW_错误和一个填充了所需长度的变量。如果您得到U_STRING_NOT_TERMINATED_警告,这意味着:数据已填充但未终止
  • 看。注意,您不应该释放通过unorm2_getInstance()获取的实例
  • 通常,大多数ICU API都可以传递一个空缓冲区和0长度作为输入,这将导致U_buffer_OVERLOW_错误和一个填充了所需长度的变量。如果您得到U_STRING_NOT_TERMINATED_警告,这意味着:数据已填充但未终止

  • 这个问题和你这里的不同吗?至少第二部分似乎已经回答了,但请告诉我我是否错了。这个问题与你这里的问题不同吗?至少第二部分似乎已经在那里得到了回答,但请告诉我是否在这方面错了。