我有一个C++应用程序,客户在其中报告了crash.But崩溃不容易重现。 分析完一些日志后,我发现在以下代码部分之间可能发生崩溃。请告诉我,如果我有这些代码声明,它有可能会崩溃的应用程序?使用sprintf_s而不指定字符串长度的崩溃C++应用程序
//Tesrt
std::string strAppName = "App1\0";
int nSize = 10;
sprintf_s(szBuff, "The appname %s have %d dependancies ", strAppName.c_str(), nSize);
//Then use the szBuff to log to a text file
//Test end
szBuff是如何定义的? – Jeeva
分配给'strAppName'的文字中的空字符是多余的。 –
@nhahtdh:我认为你把'sprintf_s'和'sprintf'混淆了。另外,假设一个“int”是32位不是很便携。 –