标题:[原创]wchar_t在汉字处理中的应用
只看楼主
aogun
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:638
专家分:0
注 册:2006-4-5
得分:0 
[QUOTE]怎样输出VC的__int64型整数?[/QUOTE]

[CODE] __int64 x=43434294967295;
printf("%I64u\n", x);[/CODE]

世界上总共有 10 种人,一种懂得什么是二进制 ,一种不懂。
2006-06-22 17:41
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
得分:0 
在TC下直接输出汉字???????????????????????

淘宝杜琨
2006-06-22 19:01
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
得分:0 

//__int64型整数(64位,VC++6.0提供)如何输出?
#include<stdio.h>
main()
{
__int64 x= -9551616;
printf("%I64d\n",x);//与printf("%I64i\n",x);等价
printf("%I64u\n",x);//按unsigned __int64进行输出
}

/*------------------*
屏幕输出如下
-9551616
18446744073700000000
*-------------------*/


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-22 19:43
langzi546
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2006-6-19
得分:0 
运行结果:

上海自来水来自海上
yes
Press any key to continue...

我有好几个地方搞不懂:
1,“判回文”是什么意思啊?
2, “char *p=(char*)s;”这种定义方法首见,怎么会有“(char*)s”的写法?我知道指针p是指向s[10],可还是不理解。
3,“for(i=0;s[i];i++,p++,p++)printf("%c%c",*(p+1),*p);”这样不是先输后一个字在输前一个字了吗?为什么不“printf("%c%c",*p,*(p+1));”呢?
请"-★-"指点,谢谢!
2006-06-22 20:01
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
得分:0 
以下是引用langzi546在2006-6-22 20:01:15的发言:
运行结果:

上海自来水来自海上
yes
Press any key to continue...

我有好几个地方搞不懂:
1,“判回文”是什么意思啊?
2, “char *p=(char*)s;”这种定义方法首见,怎么会有“(char*)s”的写法?我知道指针p是指向s[10],可还是不理解。
3,“for(i=0;s[i];i++,p++,p++)printf("%c%c",*(p+1),*p);”这样不是先输后一个字在输前一个字了吗?为什么不“printf("%c%c",*p,*(p+1));”呢?
请"-★-"指点,谢谢!

1。“上海自来水来自海上”倒过来念也是一模一样的,所以称为“回文”。古时候不就有回文诗嘛!
2。p的“基类型”是char,你让它直接指向 wchar_t s[ ] 的s,类型失配。所以要进行
“强制类型转换”(char*)s
3。这件事最好上机试一下,你就恍然大悟了。如果再悟不出来,尽管发帖问。


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-22 20:09
young
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:223
专家分:160
注 册:2004-9-5
得分:0 

我发现一个有趣的现象
你打开一个记事本,输入 连通 或者 联通 连同 炼铜 两个字,然后保存后关闭,再打开出现了一个小黑块
只要输入lian tong这两个字的就会有问题,可能是微软的bug吧
看来联通就是没有移动牛啊,微软的程序都不支持它,哈哈


如果你爱C语言,请你爱指针; 如果你爱指针,请你爱指针的指针;
2006-06-22 20:17
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
得分:0 

/*进一步熟悉VC之wprintf(L"%s%c")的用法*/
#include<stdio.h>
#include<locale.h>
main()
{
_wsetlocale(LC_ALL,L"chs");

{
wchar_t str[]=L"上海自来水来自海上";
//short str[]=L"上海自来水来自海上";也可
wprintf(L"%s\n",str);
}

{
wchar_t a=L'下',b=L'海',*p=L"经",*q=L"商";
//short a=L'下',b=L'海',*p=L"经",*q=L"商";也行
wprintf(L"%c%c%c%c\n",a,b,*p,*q);
}

}


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-23 09:48
song4
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:38
帖 子:1533
专家分:4
注 册:2006-3-25
得分:0 
以下是引用young在2006-6-22 20:17:53的发言:

我发现一个有趣的现象
你打开一个记事本,输入 连通 或者 联通 连同 炼铜 两个字,然后保存后关闭,再打开出现了一个小黑块
只要输入lian tong这两个字的就会有问题,可能是微软的bug吧
看来联通就是没有移动牛啊,微软的程序都不支持它,哈哈


嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX  Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2006-06-23 15:45
穆扬
Rank: 1
等 级:禁止发言
帖 子:1910
专家分:0
注 册:2006-6-1
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽

2006-06-23 22:40
baidu
Rank: 3Rank: 3
等 级:新手上路
威 望:8
帖 子:3811
专家分:0
注 册:2005-11-4
得分:0 
wchar_t
就是
typedef unsigned short wchar_t;

偶放弃所有文章版权,偶在BCCN论坛任何贴子,可转贴,可散发,可抄袭,可复制,可被冒名顶替,可被任何人引用到任何文章中且不写出引文出处,偶分文不取。
2006-06-24 12:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-74103-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.661857 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved