12-05-2008
I think the code looks okay (but I'm not a C++ expert). It could be that x and y no longer hold the original reference to your allocated arrays. In that case, the pointers might point somewhere they did not originally. Try this: after instantiating the m_Genes object, create a "shallow copy" of it, then before you distruct, compare the shallow copy with the m_Genes copy. If there's a difference in pointer values, that might be your problem.
Another possibility just occurred to me: It could be that you made a shallow copy of m_Genes and deleted the shallow copy as if it were a deep copy. That is, you already freed the pointers in m_Genes->x and ->y.
10 More Discussions You Might Find Interesting
1. Programming
hi,
I have made a small C program that make use of malloc and free for processing bitmap images. when i try to run the program, I am getting a error something like
*** glibc detected *** free(): invalid next size (normal): 0x0000000000503e70 ***
I am not sure of which free() is causing this... (1 Reply)
Discussion started by: vbreddy
1 Replies
2. Programming
when i try to use the class i wrote, i either get this:
*** glibc detected *** double free or corruption: 0x40236ff4 ***
and the proccess exits with an error code of 0;
or it segfaults. could someone look at my header file (with imp.) to give me some insight as to why its not working?
... (19 Replies)
Discussion started by: norsk hedensk
19 Replies
3. Homework & Coursework Questions
Hi All,
My latest assignment (practice not coursework!) is to write prototype interactive exam/test console application. I've used structs to store the question information (not sure if this was the best way to do it?) and I have the following code that outputs each question and it's possible... (0 Replies)
Discussion started by: pondlife
0 Replies
4. Homework & Coursework Questions
Hi, i'm trying to copy a struct into a binary file using the unix instruction write, so i declare and fill the struct "superbloque" in one function "initSB" and then i pass the pointer to another function called bwrite (for block write) which calls write. The problem is that i call the function... (2 Replies)
Discussion started by: ignatius3
2 Replies
5. Programming
In a well-known book on the C language, there is an example of an efficient method for using a struct member as an argument to a function. (I'm a C noob, but I believe the correct terminology might be: use call-by-reference instead of call-by-value.) The function is printf.
Anyway, here's a... (5 Replies)
Discussion started by: uiop44
5 Replies
6. Programming
Hi guys, I'm trying to understand pointers in C and made a simple example and I've problems with It.
Can someone help?
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
int f1(char **str_);
int main(int argc, char **argv)
{
char *str = NULL;
f1(&str);
... (3 Replies)
Discussion started by: pharaoh
3 Replies
7. Programming
Hi Friends,
while executing the below code, am getting *** glibc detected *** ./ok: malloc(): memory corruption (fast) error, please suggest how to solve this issue.
#include <stdio.h>
#include <string.h>
#include <sqlca.h>
#include <alloca.h>
/* Define constants for VARCHAR... (2 Replies)
Discussion started by: mpjobsrch
2 Replies
8. Programming
I am facing a problem of memory corruption. The loop runs for the first time but does not go through the second time. What could be the problem?
for(int z=0;z<2;z++)
{
fp=fopen("poly.dat","r");
/*do something which reads this file into a 2D array*/
fclose(fp);
... (10 Replies)
Discussion started by: dare
10 Replies
9. Programming
Currently I test a shared library vendor provided in linux , the following is the simple source :
#include <iostream>
using namespace std;
extern int test1();
extern int test2();
int main()
{
cout << "hello world" << endl ;
return 0 ;
cout << "Test 1" << endl;
... (6 Replies)
Discussion started by: barfatchen
6 Replies
10. Homework & Coursework Questions
Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!
1. The problem statement, all variables and given/known data:
I'm doing aproximation of derivative called five-point stencil. For every value of x, in interval , in step... (0 Replies)
Discussion started by: antonija
0 Replies
FDIM(3) Linux Programmer's Manual FDIM(3)
NAME
fdim, fdimf, fdiml - positive difference
SYNOPSIS
#include <math.h>
double fdim(double x, double y);
float fdimf(float x, float y);
long double fdiml(long double x, long double y);
Link with -lm.
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
fdimf(), fdiml(): _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE; or cc -std=c99
DESCRIPTION
These functions return the positive difference, max(x-y,0), between their arguments.
RETURN VALUE
On success, these functions return the positive difference.
If x or y is a NaN, a NaN is returned.
If the result overflows, a range error occurs, and the functions return HUGE_VAL, HUGE_VALF, or HUGE_VALL, respectively.
ERRORS
See math_error(7) for information on how to determine whether an error has occurred when calling these functions.
The following errors can occur:
Range error: result overflow
An overflow floating-point exception (FE_OVERFLOW) is raised.
These functions do not set errno.
VERSIONS
These functions first appeared in glibc in version 2.1.
CONFORMING TO
C99, POSIX.1-2001.
SEE ALSO
fmax(3)
COLOPHON
This page is part of release 3.25 of the Linux man-pages project. A description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.
2008-08-11 FDIM(3)