C语言字符串赋值问题

来源:百度知道 编辑:UC知道 时间:2024/06/30 03:25:59
char b[]={'L,'a','n','g','u','a','g','e','!',}
能把字符串“Language! "赋值给数组b吗???
这是一个选择题,答案是说这可以
可是最后它不是多了一个逗号吗???
谢谢!!

没错。我用vc6.0试了可以的。
对于你的补充我不得不说,我也跟你的感觉是一样总觉得这个题,语法上是有错的。但是我先试着运行了,结果就是对了。我猜测可能是语法定义时没考虑全,出现漏洞了,呵呵,只是我的猜测。

可以的。

本来就可以啊
,后面没东西默认是空元素啊

B[]是10个字符的数组
字符串默认后面有个NULL做结束符的
不是正好嘛。。。

你试试看只写一串逗号,赋值后看看b里的值是什么

b[]中最后一个逗号是占了一个字节的,因此数组的长度为10。当把字符串赋给一个数组时,字符串后面还有一个空操作符,要占个字节,这个就刚好了。