如何给数组赋值中文

如何给数组赋值中文,第1张

和普通数组差不多。

一维数组: char a[] = "你好"

二维数组: char b[3][] = { "你好", "我好", "大家好" }

三维数组: char c[2][3][] = { {"一", "二", "三"}, {"四", "五", "六"}, {"七","八","九"} }

-----

另外,给你看个例子。

对于GBK编码码:

char *s = "静夜思"

char a[7] = { s[0], s[1], s[2], s[3], s[4], s[5], 0 }

printf("%s\n", s) // 会输出 ‘静夜思’ 三个字。

printf ("%s\n", a)// 会输出 ‘静夜思’ 三个字。

char b[3] = { s[2], s[3], 0}

printf ("%s\n", b)// 会输出 ‘夜’ 一字。

这同你用什么编码有关,同编译器有关。

用 VC++ 6.0

可以 包含 TCHAR.H

存放用 wchar_t s[数组大小];

输入用 _tscanf, 定义了 _UNICODE 用 wscanf

字符串比较 用函数 _tcscmp

定义了 _UNICODE, 比较 用 wcscmp

定义了 _MBCS,比较用 _mbscmp

-------

普通 GB2312 ,可以用文件输入,或你的输入法提供的方法传入 char 数组,比较时 比较2个字节的内容。

char *s[4]={"李四","张三","黄生","二小"},*p[4]

把p[i]指向s[i],即:

for(i=0i<4i++)

p[i]=s[i]

也可以直接char *p[4]={"李四","张三","黄生","二小"}这里数字4只是表示指针数组中指针的个数,而不是字符长度。

扩展资料:

C语言的运算符主要用于构成表达式,同一个符号在不同的表达式中,其作用并不一致。下面按计算的优先顺序,分别说明不同作用的表达式。需要特别指出,在C语言标准中,并没有结合性的说法。

相同优先级运算符,从左至右依次运算。注意后缀运算优先级高于前缀。因此++i++应解释为++(i++)。

而与或非的运算优先级都不一样,因此a &&b || b &&c解释为(a &&b) || (b &&c)

合理使用优先级可以极大简化表达式。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11678900.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存