的大小采取以下程序:strcat的目标数组
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
char a[8] = "Hello, ";
char b[7] = "world!";
strcat(a, b);
cout << a;
return 0;
}
注意a
和b
有大小作为其指定的字符串相同。
documentation指出,要使strcat(a, b)
正常工作,a
需要足够大以包含连接的结果字符串。
尽管如此,cout << a
显示"Hello, world!"
。我是否进入未定义的行为?
+1。对一个不太好的问题的好答案。 – Nawaz
@Nawaz,对你有什么好*问题?它是一种促进你的知识吗?无论如何......谢谢Arkady,非自恋的,彻底的答复。 – Raptor
@JosuéMolina:问问你自己:什么是你*不那么好的*问题? – Nawaz