0
Valgrind-Tool erkennt den folgenden Fehler im Code nicht.Klassenobjekt-Speicherfehlererkennung mit variablem Pegel
#include <iostream>
#include <string.h>
using namespace std;
class Instrument
{
public:
char instrumentId[16];
char symbol[16];
char cusip[16];
public:
void Pack()
{
memset(instrumentId, 'I', 16);
memset(cusip, 'C', 16);
memset(symbol, 'S', 18); // This is wrong
}
};
int main(int argc, char** argv)
{
Instrument* ins = new Instrument();
ins->Pack();
};
Gibt es ein Tool, das diese Art von Fehler erkennen kann? Wenn es in mehr als für "Instrument" zugewiesen schreibt, wird von Valgrind erkannt. Dies wird jedoch nicht erkannt.
Hinweis: '#include' –
Dann was ist mit dem memset? –
@ DieterLücking warum nicht? –