Click here to Skip to main content
15,889,595 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: strcpy dilemma - it works half way Pin
CPallini4-Aug-15 6:54
mveCPallini4-Aug-15 6:54 
GeneralSOLVED Re: strcpy dilemma - it works half way Pin
Vaclav_4-Aug-15 7:41
Vaclav_4-Aug-15 7:41 
AnswerRe: strcpy dilemma - it works half way Pin
Arthur V. Ratz13-Aug-15 18:54
professionalArthur V. Ratz13-Aug-15 18:54 
QuestionMsbuild for VC++ project having path errors Pin
code_az3-Aug-15 12:54
code_az3-Aug-15 12:54 
Questionruntime error due to corruption of heap Pin
Member 93502372-Aug-15 22:22
Member 93502372-Aug-15 22:22 
AnswerRe: runtime error due to corruption of heap Pin
Member 93502372-Aug-15 22:33
Member 93502372-Aug-15 22:33 
SuggestionRe: runtime error due to corruption of heap Pin
David Crow3-Aug-15 2:12
David Crow3-Aug-15 2:12 
AnswerRe: runtime error due to corruption of heap Pin
Daniel Pfeffer3-Aug-15 0:52
professionalDaniel Pfeffer3-Aug-15 0:52 
This sort of error is caused by code overwriting the beginning (or end) of a heap block, and corrupting the heap control structures. One way to find such a problem is to wrap each of your blocks in a "signature" (see below), and periodically check that the "signature" is valid.

Original structure:
C++
class foo
{
   int  baz;
   char bar;
};

New structure:
C++
class foo
{
   long sig1;
   int  baz;
   char bar;
   long sig2;
};

Note that you can use the constructor to initialize the signature, and the destructor to check whether the signatures have changed. Your methods can check the validity of the signatures before performing any operations. You can also modify the signatures in the destructor, in order to catch accesses to freed memory.

A library of this sort is a basic tool for any C++ programmer. If you don't have such a library in your toolbox - write one!
If you have an important point to make, don't try to be subtle or clever. Use a pile driver. Hit the point once. Then come back and hit it again. Then hit it a third time - a tremendous whack.

--Winston Churchill

AnswerRe: runtime error due to corruption of heap Pin
Jochen Arndt3-Aug-15 2:13
professionalJochen Arndt3-Aug-15 2:13 
QuestionConvert to ASCII ? Pin
Vaclav_1-Aug-15 3:52
Vaclav_1-Aug-15 3:52 
AnswerRe: Convert to ASCII ? Pin
CPallini1-Aug-15 4:15
mveCPallini1-Aug-15 4:15 
AnswerRe: Convert to ASCII ? Pin
Richard MacCutchan1-Aug-15 4:33
mveRichard MacCutchan1-Aug-15 4:33 
GeneralRe: Convert to ASCII ? Pin
Vaclav_1-Aug-15 9:40
Vaclav_1-Aug-15 9:40 
GeneralRe: Convert to ASCII ? Pin
Richard MacCutchan1-Aug-15 21:00
mveRichard MacCutchan1-Aug-15 21:00 
GeneralRe: Convert to ASCII ? Pin
CPallini2-Aug-15 6:56
mveCPallini2-Aug-15 6:56 
QuestionEfficient way of converting an 8bit array of grayscale pixel data into 24bpp bitmap for GDI+? Pin
Kiran Satish31-Jul-15 8:39
Kiran Satish31-Jul-15 8:39 
QuestionRe: Efficient way of converting an 8bit array of grayscale pixel data into 24bpp bitmap for GDI+? Pin
CPallini31-Jul-15 21:40
mveCPallini31-Jul-15 21:40 
AnswerRe: Efficient way of converting an 8bit array of grayscale pixel data into 24bpp bitmap for GDI+? Pin
Jochen Arndt31-Jul-15 21:51
professionalJochen Arndt31-Jul-15 21:51 
GeneralPassing an "array" in C Pin
PIEBALDconsult31-Jul-15 7:41
mvePIEBALDconsult31-Jul-15 7:41 
GeneralRe: Passing an "array" in C Pin
k505431-Jul-15 7:55
mvek505431-Jul-15 7:55 
GeneralRe: Passing an "array" in C Pin
PIEBALDconsult31-Jul-15 8:34
mvePIEBALDconsult31-Jul-15 8:34 
SuggestionRe: Passing an "array" in C Pin
camycentsolutions2-Aug-15 19:36
camycentsolutions2-Aug-15 19:36 
GeneralRe: Passing an "array" in C Pin
Chris Losinger31-Jul-15 9:50
professionalChris Losinger31-Jul-15 9:50 
GeneralRe: Passing an "array" in C Pin
PIEBALDconsult31-Jul-15 10:48
mvePIEBALDconsult31-Jul-15 10:48 
GeneralRe: Passing an "array" in C Pin
PIEBALDconsult31-Jul-15 14:17
mvePIEBALDconsult31-Jul-15 14:17 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.