c++导致病毒错误
C++ causing VIRUS errors?
看完这篇文章,你可能会说我疯了,但我真的希望你相信我。为了了解可能导致内存泄漏或其他错误的情况,我编写了以下代码并尝试在我的pc上编译,
#include <iostream>
using namespace std;
class game
{
int x;
public :
char *s;
char read();
char manipulation();
};
char game :: read()
{
char string[100];
cout<<"Enter name ";
cin>>string;
s = string;
cout<<"Name is "<<&s<<endl;
}
int main()
{
game games,games1;
// games.read();
cout<<"Name is "<<games.s<<endl;
return 0;
}
如果我在主程序中执行games.read(),我的杀毒软件BITDEFENDER显示以下错误,"BITDEFENDER在c:/c++/inline.exe中检测到受感染的项目。"病毒名称:Gen:Variant.Graftor.51542。为保护您,文件已消毒"
inline.cpp是我的程序名。如果我删除那行"games.read()",它编译得很好。指针是否在某处导致内存泄漏?
您的杀毒程序刚刚发现了一个免费后使用的漏洞。
string
是本地数组。read()
退出后不能使用
如果你的系统声称你的代码是病毒,那么你没有什么可担心的,因为你正在失去理智;你不是。
病毒扫描程序将查找与病毒一致的行为模式并报告它们。它们并不完美,非病毒行为有时看起来像病毒。
例如,典型的病毒策略是使用无效的指针写来运行任意代码。最早的一种病毒就使用了这种方法,现在它仍然是一种常见的策略(我记得不久前有一个IE更新来解决这个问题)。因此,如果你有一个指针错误(正如前面的海报所指出的),那么它可能看起来像一个病毒。
相关文章:
- 警告处理为错误这里有什么问题
- "error: no matching function for call to"构造函数错误
- boost::进程间消息队列引发错误
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- QT在错误的班级中寻找空位
- vector.resize()中的分配错误
- 代码在main()中运行,但在函数中出现错误
- 释放错误后堆使用
- (C++)分析树以计算返回错误值的简单算术表达式
- Project Euler问题4的错误解决方案
- 我的字符计数代码计算错误.为什么
- 从"int*"强制转换为"unsigned int"会丢失精度错误
- 尝试导入pybind-opencv模块时出现libgtk错误
- CMake项目Boost库错误:Boost/config/compiler/gcc.hpp:165:10:致命错误:cs
- 在某些循环内使用vector.push_back时出现分段错误
- MSVC多行宏编译器错误
- 嵌套开关给出错误并指示病毒(特洛伊木马程序)
- GetModuleFileName防病毒错误检测??获取当前进程PATH
- c++导致病毒错误