设两个字符串"Beijing"、"China"分别存放在字符数组str1[10],str2[10]中,下面语句中能把"China"连接到

"Beijing"之后的为:
A.strcat(str1,"China") B.strcat("Beijing",str2)
这两者有什么区别

B

strcat是把后一个参数的字条串复制到前一个字符串的后面。

1,能把"China"连接到"Beijing"之后的语句为 strcat("Beijing",str2);
楼上已把这个函数的声明写出了,这个语法是没有问题。

2,由于"Beijing"存放的是在str1中,而str1和str2是在编译期间由编译器为程序申请好的固定的空间,是在堆中申请的,是程序一运行就存在的。一般对于连续定义的变量,空间一般也是连续的,这由编译器的特性决定(大部分正常情况下)。
执行B语句,正常情况下不会出现溢出现象,也不会引起系统崩溃。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-03-07
当然是A
strcat(const char * Destination, const char * Sourse);
函数原型明显是资源连接到目标字符串
并且第二个内存会越界,字符串存储在静态区,静态区内存只读,在“beijing”后内存写入程序会崩溃本回答被提问者采纳

相关了解……

你可能感兴趣的内容

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