This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

problem with malloc/realloc. Pls help.


Hi,
 i have the following code. it compiles with gcc in Cygwin but the contents of
the array ifitQ that I get after the call to the subroutine readCharges2 is
gibberish.
The code compiles with gcc under Linux and it runs correctly. it also compiles
and runs correctly with windows visual studio. Pls help. The resuls i get with
Cygwin is:
isumNatms = 5 
rrr 13
rrr 14
rrr 15
rrr 16
*** 1628693268
*** 1628693268
*** 16
*** 1034

instead of:
isumNatms = 5 
rrr 13
rrr 14
rrr 15
rrr 16
*** 13
*** 14
*** 15
*** 16

the code is:

#include <stdio.h>
#include <stdlib.h>

        void readCharges2(int *, int *, int *);
int main()
{
        static int *ifitQ;
        int *ipUniqAtms, *ipindexToFit;
                int j;
int x,y;
ipUniqAtms =&x;
ipindexToFit=&y;
               ifitQ = (int *) malloc(sizeof(int));
       if(ifitQ==NULL){printf("Unable to allocate matrix ifitQ\n");
               exit(EXIT_FAILURE);}
                readCharges2(ifitQ,ipUniqAtms,ipindexToFit);
       for(j=0; j< *ipUniqAtms ; j++)
       {
              printf("*** %d\n",ifitQ[j]);
       }

        return 0;
}

void readCharges2(int *ifitQ, int * ipUniqAtms, int * ipindexToFit)
{
       int  j, isumNatms=0;
       isumNatms=5;
       printf("isumNatms = %d \n",isumNatms);
       ifitQ = (int *) realloc(ifitQ,isumNatms*sizeof(int));
       if(ifitQ==NULL){printf("Unable to allocate matrix ifitQ\n");
               exit(EXIT_FAILURE);}

       ifitQ[0]=13;
       ifitQ[1]=14;
       ifitQ[2]=15;
       ifitQ[3]=16;
*ipUniqAtms =  4;
*ipindexToFit =  3;
       for(j=0; j< *ipUniqAtms ; j++)
       {
              printf("rrr %d\n",ifitQ[j]);
       }
}



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]