`

C 计算带有汉字的字符串长度并输出

阅读更多
#include <stdio.h>
#include <string.h>
#include <wchar.h>
#include <locale.h>                              //printf zh language
#include "StrTest.h"
int main(int argc,char*argv[])
{
    wchar_t wstr[]=L"Hello World,呵呵!";
    setlocale(LC_ALL, "zh_CN.UTF-8");            //printf zh language
    setlocale(LC_CTYPE, "zh_CN.UTF-8");
    wprintf(L"wstr:%ls\n",wstr);
    printf("wstr len %ld\n",wcslen(wstr));
    return 0;
}
其中要想将汉语输出必须要使用setlocale函数设置LC_ALL或LC_CTYPE选项,我试过设置任何一个都可以。这一样使用wprintf函数就可以输出汉语了。
分享到:
评论

相关推荐

    java中截取带汉字的字符串

    2. **计算截取次数**:根据字符串长度和每次截取的字节数,计算出需要截取的次数。如果字符串长度不能被每次截取的字节数整除,则最后一次截取的长度会少于指定的字节数。 3. **实现截取逻辑**:遍历字符串,按照...

    超简单C#获取带汉字的字符串真实长度(单个英文长度为1,单个中文长度为2)

    在 C# 中,获取字符串的长度是一件非常简单的事情,但是在处理带有汉字的字符串时,事情就会变得复杂起来。这是因为汉字是由两个字节组成的,而英文字符只占用一个字节。因此,直接使用 `string.Length` 属性来获取...

    pb中实现字符长度和计算器的实现

    在PowerBuilder中,字符串长度的计算可以通过内置函数`Len()`来实现。`Len()`函数接受一个字符串作为参数,并返回该字符串的字符数量。例如,如果你有一个变量str保存了字符串"Hello, World!",你可以使用`Len(str)`...

    关于java按字节截取带有汉字的字符串的解法

    在Java编程语言中,处理带有汉字的字符串时,由于汉字占据多个字节,按照字节进行截取可能会导致汉字被不完整地分割,从而产生乱码。为了解决这个问题,我们需要理解Unicode编码以及如何在Java中正确处理多字节字符...

    按字节长度截取字符串(支持截取带HTML代码样式的字符串)

    本篇文章将深入探讨如何在C#中按照字节长度截取带有HTML代码样式的字符串,并确保截取后的字符串仍能保持有效的HTML结构。 首先,理解为什么需要按照字节长度而不是字符长度截取字符串。在处理非ASCII字符(如中文...

    易语言字符串结构

    2. **长度计算**:由于易语言字符串不包含结束符,所以计算传递给DELPHI的字符串长度时,需要加上1。 3. **内存管理**:在DELPHI中,字符串通常以`PChar`或`AnsiString`类型表示,需要确保正确释放分配的内存。 ...

    java按字节截取带有汉字的字符串的解法(推荐)

    本文将深入探讨如何正确地按字节截取带有汉字的字符串,以确保不出现半字符或者乱码的情况。 首先,我们需要了解的是,Java默认使用Unicode编码,它对每个字符都分配了一个唯一的16位编码,这意味着大多数汉字在...

    c# 实验十一字符串和正则表达式

    其他如验证特定长度的数字、英文字母组成的字符串、大写字母组成的字符串、汉字、身份证号或邮箱地址,也有对应的正则表达式模式。 总的来说,这个实验涵盖了字符串的基本操作、格式化技巧以及正则表达式的使用,...

    C# 文本对比算法比较两个字符串的不同

    实际代码实现会涉及对字符串的逐字符或逐单词迭代,对比并记录差异,然后将这些差异整理成用户友好的输出。 总之,C#中的文本对比算法是一种强大的工具,可以帮助开发者解决各种文本处理问题。通过创建自定义的`...

    C#优化字符串操作

    - 在字符串操作中,`"{0}%10".PadLeft(10, '0')`可用于将数字填充到固定长度的字符串,并保持其最后一位不变。 9. **输出21个AAAAAAAAAAAAAAAAAAAAA的巧妙做法** - 可以使用字符串乘法:`"A" * 21`。 - 使用`...

    mysql 字符串长度计算实现代码(gb2312+utf8)

    下面简要的剖析一下PHP对中文字符串长度的处理: PHP自带的函数如strlen()、mb_strlen()都是通过计算字符串所占字节数来统计字符串长度的,一个英文字符占1字节。例: $enStr = ‘Hello,China!’; echo strlen($...

    C#_的字符串处理函数及举例

    4. **字符串长度**: - `str.Length` 返回字符串的字符长度,如`str.Length`会返回"中国"的长度,即2。 5. **字节编码转换**: - `System.Text.Encoding.Default.GetBytes(str)` 将字符串转换为字节数组,如`byte...

    jQuery截取指定长度字符串代码

    标题所提到的"jQuery截取指定长度字符串代码"实际上是一个JavaScript插件方法,它扩展了jQuery的核心功能,允许开发者便捷地限制DOM元素(如`&lt;div&gt;`)中文本内容的显示长度。以下是对这段代码的详细解析: 首先,...

    jQuery检测输入的字符串包含的中英文的数量

    本篇文章将着重介绍如何使用jQuery这一流行的JavaScript库来检测用户输入的字符串中英文字符和中文字符的数量。 首先,我们来了解一下文章中提到的两种实现方法: 方法一是基于页面加载完成的事件处理。通过$...

    JS按字节截取字符长度实例

    如果截取后发现字符串长度超过了给定的字节数,那么就返回带有省略号的字符串;否则,直接返回未截取的字符串。 `cutString`函数的核心在于计算字符串的字节长度。这里采用了一个循环遍历字符串中的每个字符,通过`...

    JAVA字符串编解码问题[定义].pdf

    ISO-8859-1是一个单字节编码,不能完整表示中文字符,因此在尝试将中文字符串以ISO-8859-1编码时,会丢失信息并可能出现问号('?')来代替无法表示的字符。相比之下,GBK和UTF-8可以表示中文,GBK每个字符用两个字节...

    C语言库函数并带实例说明

    C语言库函数是C编程中的重要组成部分,它们提供了一系列预定义的函数,使得开发者能够方便地执行各种操作,如输入输出、字符串处理、数学运算、内存管理等。库函数是C语言强大且实用的特性,因为它们经过优化,效率...

    PHP中文字符串截断无乱码解决方法

    第一个例子是截取长中文字符串的中间部分,而第二个例子则展示了截取不带英文和带英文的中文字符串。通过这些例子,可以看出各个函数在不同情况下的应用和效果。 最后,文章还提到了PHP获取用户客户端真实IP地址的...

    在SQL Server2000中处理半个汉字的问题

    测试该函数的例子展示了带有半个汉字的字符串如何被正确处理。当半个汉字与另一个字符组合时,它们可能会形成一个不可识别的字符,就像“b”和“你”的高字节组合成了“膶”。这说明了在处理汉字时需要注意字节的...

Global site tag (gtag.js) - Google Analytics