C语言怎么给一个变量赋值中文?

可不可以这样
b=汉字

可以通过给字符数组赋值来解决。就是变量b需要定义为字符数组。

例如:

#include <stdio.h>
int main()
{
char b[]="汉字";
printf("%s",b);
return 0;
}

//运行结果:

C语言中不存在你图片中写的这种语法,既然学C语言,就应该按照C语言要求的格式来进行书写,不能自己强行发明创造。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-21
在 C 语言编程中,关于给某个具体变量赋值中文的问题,根据我的编程经验,你可以这样编程不容易出错,见如下程序代码:
#include <string.h>
#include <stdio.h>
#define MAX 50 /* 定义一个宏 MAX,该宏定义可以根据需要自行进行修改 */
void main( )
{
unsigned char my_hanzi[MAX] ; /* 在这里必须要注意:由于所需要处理的信息是汉字信息,但是汉字信息的 ASCII 码的最高位为 1,故在这里必须要将变量定义成无符号字符型数组:unsigned char my_hanzi[MAX] */

gets(my_hanzi) ; /* 输入一个汉字字符串,但是最大长度不能够超过 MAX 个字符,否则会出错 */

puts(my_hanzi) ; /* 输出刚刚在上面从键盘上输入的汉字字符串 */

strcpy(my_hanzi, "这是一个汉字字符串的应用" ) ; /* 将一个新的汉字字符串复制给变量 my_hanzi */

puts(my_hanzi) ; /* 再输出刚刚复制的新的汉字字符串 */

}
至于说其它的对汉字信息的各种处理,均可以参考该程序。
第2个回答  2019-03-20

你所希望赋值的其实并不是中文,而是表示成中文的“星座”。星座只有十二个,而中文字有成千上万个,所以正确的做法应该是用 enum。但是enum之能使用英文标识符,所以你接下来可以选择拼音,或者英文,或者两者皆有的方式。

enum {
    // 英文
    Aries = 0, 
    Taurus, 
    Gemini, 
    Cancer, 
    Leo, 
    Virgo, 
    Libra, 
    Scorpio, 
    Sagittarius, 
    Capricorn, 
    Aquarius, 
    Pisces, 
    // 拼音
    Baiyangzuo = 0, 
    Jinniuzuo, 
    Shuangzizuo, 
    Juxiezuo, 
    Shizizuo, 
    Chunvzuo, 
    Tianpingzuo, 
    Tianxiezuo, 
    Renmazuo, 
    Moxiezuo, 
    Shuipingzuo, 
    Shuangyuzuo, 
}

第3个回答  2019-03-20

一个汉字占用的内存至少为2字节,因此对多字节和宽字符集来说,表示汉字的方式也略有不同:

多字节字符集的基本是char,占1字节,因此char无法表示一个汉字,只能用来表示:

char a = '你'; //错误,一个汉字至少占2字节
char b[] = "好"; //正确

宽字符集的基本数据类型是wchar_t,通常占2字节,采用Unicode编码,可以表示汉字:

wchar_t a = L'你'; //正确
wchar_t b[] = L"好"; //正确

此外,采用多字节字符集表示汉字时,还需要注意文件本身的编码是否和系统默认的字符集一致,否则可能导致。例如在Windows下,源代码文件应该用GB-2312字符集编码。如果用UTF-8编码,就可能导致编译或运行时的乱码问题。

追问

就是像图片里那种要怎么做,求教

追答

请分清楚字符串标识符的区别。字符串可以包含任何字符,而标识符的名称必须遵循C语言语法规定。标识符不可以使用中文。

追问

那应该怎么改呢Σ(ŎдŎ|||)ノノ

追答

我觉得你对C语言的一些基本概念,例如什么是字符、什么是字符串、什么是标识符完全没有理解。在试图修改这个程序之前,我建议你拿起C语言教材,好好阅读完基础部分。如果你理解了什么是字符,什么是字符串,那么你自然就会写出正确的程序。因为我之前已经说过,字符串中可以包含任何内容,包括英文、汉字、特殊符号等,只要它们在当前的字符集内是合法的。

本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网