乔山办公网我们一直在努力
您的位置:乔山办公网 > word文档 > 请问在C语言中如何输出汉字?-c word打印,word文档打印在哪里

请问在C语言中如何输出汉字?-c word打印,word文档打印在哪里

作者:乔山办公网日期:

返回目录:word文档


Windows XP与DOS是完全zhidao不同的两种内核。Windows XP几乎把DOS完全摒弃了。
而TC则是DOS时代的遗留物。

所以用TC编出来的程序在WINDOWS XP中运行时,权限是非常有限的。特别是对屏幕的操作。所以画点阵的方法是行不通的(更何况这个方法编出的程序也是很复杂的)。如果你用的是98以前的操作系统的话,用UCDOS就可以实现,但在XP中UCDOS已经不能用了。

如果想要用C语言编程时输出汉字,可以用以下几种方法:
1.最值得推荐的一种。摒弃TC,改用为WINDOWS编程设计的Visual C++,或者C++ Builder,lcc等。
用这几种工具的话,在代码中可以直接输入汉字。编译出来的是32位windows程序不存在兼容问题。

2.改用98以前的操作系统。
3.装个虚拟机,在虚拟机中装上DOS或者98。当然还要装上UCDOS。然后,在其中用TC写程序。

根据你的代码,改成下面的可以正常输出:
#include<string.h>
#include<stdio.h>
#include<stdlib.h>
int main()
{
char *p="你好,中国!";
for(size_t i=0;i<strlen(p);i++)
if(p[i]<0)
{
printf("%c%c",p[i],p[i+1]);//不要用p[++i],因为printf是先计算右边表达式的值的,按照你原来的代码,假设是第一次循环,那是会输出2个同样的p[1]的,而不是p[0]和p[1]
i++;
}
return 0;
}

具体操作步骤如下:

一、首先定义一个wchar_t类型的数组用于存储输入的中文,同时定义两个变量inx、size,size用于保存实际输入的汉字中文数,inx用于循环控制打印每一个中文汉字的16进制编码。

二、然后,输入中文汉字,需要调用wscanf函数,注意不能使用%s作为字符串输入,而要使用%ls。

三、接下来使用wcslen()来统计中文汉字的个数,这个是strlen()的宽字符版本,名称不一样,使用是一样的。

四、最后通过一个for循环,输出所有汉字的编码即可。



怎么打印网格?

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网