强类型(在本例中为 char)是否可以防止缓冲区溢出?
char a[100]
char b[100]
strcpy(a,unknownFunction); // unknownFunction could overflow b
// since its length is unknown
strcpy(b,a); // can b still overflow a with its now,
// potentially overflowed size?
最佳答案
没有。 strcpy()
会一直运行,直到找到空终止符 ('\0'
)。如果 b[]
不包含一个,它将遍历随机内存,直到最终找到一个。
关于c++ - 强类型能防止缓冲区溢出吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3629131/