我刚刚在课程上标记了这个错误的解决方案,在c中缓冲区溢出但是没有提供关于它是如何错误的反馈.有人能让我知道问题是什么吗?谢谢.
该问题提出了一个解决方案,以防更长的字符串传递给此函数:
void function(char *str)
{
char buffer[16];
strcpy(buffer, str);
}
Run Code Online (Sandbox Code Playgroud)
这是我的解决方案
void function(char *str)
{
size_t str_length = strlen(str);
char buffer[str_length];
strcpy(buffer, str);
}
Run Code Online (Sandbox Code Playgroud)
谢谢