c语言中怎么将中文字符存入一个字符数组

如题所述

1、首先新建一个dev C++的项目。

2、接下来在项目中新建C语言程序文件,如下图所示。

3、然后在C语言文件中声明一个字节数组。

4、接下通过printf函数提示用户输入字符串,通过scanf接收用户输入的字符串。

5、接着在通过printf函数输出用户输入的内容。

6、最后运行C语言程序,输入内容以后就存入字符数组了。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-26

准备知识:

1、在中文windows操作系统下,中文默认是采用BGK字符集,每个字符占16bit(2字节)。

2、C语言规定char类型的具体实现至少8bit。一般gcc等编译器都将char类型实现为8bit(1字节)。


答案:

所以在中文Windows下,一般使用C语言的内置char类型的数组,就可以存储中文了。比如char[2]可以存储一个中文。

char ch[11] = "我来测试的";//5个汉字*2字节/汉字=10字节,再加一个'\0'结尾符,一共需11字节
printf("%s\n", ch);

本回答被提问者和网友采纳
第2个回答  2014-11-12
一个中文字占用2个字节来存储,首先保证空间足够。如果4个中国字,就需要9个字节来存储,前8个存储中国字,最后一个存储结束符\0,就可以了。
第3个回答  2014-11-12
char ch[20] = "我来测试的"
printf("%s\n", ch);

输出:
我来测试的

C语言如何在代码中将汉字存入一个已经声明过的字符串?
这个要看字符集,不同字符集对一个字符的定义是不一样的。你可以基本这么认为,你不可能一个字一个字的给汉字赋值,因为一个汉字对应多个字符,你不能拆开来赋值。你只能用strcpy当作字符串来拷贝

C语言问题,如何将中文放进字符数组
也可以直接char *p[4]={"李四","张三","黄生","二小"};这里数字4只是表示指针数组中指针的个数,而不是字符长度。

C语言中如何读取文件中的汉字并将其存入数组中?
按字符方式读取文件,每读一个字符判断一下是否为汉字编码(<0),若是则存入字符数组,不是则跳过读取下一个字符,直到文件结束。设原文件在当前目录下,名为123.txt,举例代码如下:\/\/#include "stdafx.h"\/\/If the vc++6.0, with this line.#include "stdio.h"#include "stdlib.h"int main(...

在VC中如何用C语言输入一个汉字,将汉字给一个变量,使这个变量输出的时候...
可以用unsigned char类型的数组储存汉字,输出时按字符串输出即可 include<stdio.h> int main() { unsigned char s[]="百度一下,你就知道"; printf("%s\\n",s); puts(s); scanf("%s",s); printf("%s\\n",s); puts(s); return 0; } ...

c语言中怎么将汉字存入数组并输出,要具体C语言代码
你好!!include<stdio.h> void main(){ char array[20];scanf("%s",array);printf("%s\\n",array);} 测试:王军伟 王军伟 Press any key to continue

C语言中如何读取文件中的汉字并将其存入数组中?
fgets(char s,int n,FILE stream);---精通unix下c语言编程与项目实践P66 行输出函数族 int puts(const char s);int fputs(const char s,FILE stream);---精通unix下c语言编程与项目实践P67 块读写函数 能够输入输出任意数量的字符,在操作二进制文件时常常使用,fread 和fwrite 块读写函数经常...

c语言 文件读取 字符 到一个字符数组
功能为从打开的文件fp中读取一个字符,并返回。当读取成功时,返回读取到的字符的ascii码值,否则返回EOF。以下是逐个读取字符,存于字符数组,直到读完整个文件的例子。include <stdio.h>int main(){ char buf[10240];\/\/定义一个足够大的字符数组存文件数据。 int c;\/\/临时变量。 int ...

c语言怎么输入字符串到一个数组
scanf("%s",s1);scanf("%s",s2);\/\/你不是用了两个输入吗,而在cmd下就是以空格来区分其参数的 \/\/不管是一个空格还是几个空格都一样

c语言怎么输入字符串到一个数组
void main(){ char szBuffer[1024] = { 0 };scanf("%s",szBuffer);printf("%s",szBuffer);} 程序可以输入1024长度内的任意字符串,回车结束

c语言中如何将一句话存入数组
若是从控制台输入,使用gets函数即可。把一句话话存入字符数组当中。使用形式:char *gets( char *str );gets从标准输入设备读字符串函数。可以无限读取,不会判断上限,以回车结束读取,所以程序员应该确保buffer的空间足够大,以便在执行读操作时不发生溢出。gets()函数读取到\\n(我们输入的回车)于是...

相似回答