Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > C Moderated > Re: Problem in ...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 3 of 4 Topic 1083 of 1133
Post > Topic >>

Re: Problem in writing structure to Binary file in C lang

by Prashu <prashanthkumar.chanda@[EMAIL PROTECTED] > Apr 21, 2008 at 01:20 PM

On Apr 19, 2:11 am, zehra...@[EMAIL PROTECTED]
 wrote:
> Hi,
> I had written application for storing employee data in binary file and
> reading those data from binary file and display it in C language.
> But I face some issue with writing data to binary file.
> Here is my part of my code.
>
> struct cust_data
> {
>         int nCAFID;
>         char *szFirstName;
>
> };
>
> typedef struct cust_data CUST_DATA;
> CUST_DATA *pCustdata = NULL;
> int AddRecord()
> {
>            FILE *fp;
>            fp = fopen("Input.dat","ab+");
>                   return fp;
>            pCustdata = malloc(sizeof(CUST_DATA));
>
>            pCustData->szFirstName = malloc(sizeof(pCustData-
>
> >szFirstName));
>
>            printf("Enter CAFID : ");
>            scanf("%d",&pCustData->nCAFID);
>
>            printf("Enter First Name : ");
>            scanf("%s",pCustData->szFirstName);
>
>            fwrite(pCustData,sizeof(CUST_DATA),1,fp);
>
>            fclose(fp);
>
>            free(pCustData->szFirstName);
>            free(pCustData)
>
> }
>
> now here when i write a structure to file, it writes nCAFID and
> inplace of szFirstName it writes pointer to string.
> But i need to write string..
> if i take szFirstName as char array then it is wroking fine.....but i
> want to use heap memory instead of stack..
> can anyone help me..................??
> thanks in advance.............
> --
> comp.lang.c.moderated - moderation address: c...@[EMAIL PROTECTED]
 -- you
must
> have an appropriate newsgroups line in your header for your mail to be
seen,
> or the newsgroup name in square brackets in the subject line.  Sorry.

---pCustdata = malloc(sizeof(CUST_DATA));
 By above statement .. you are allocating the memory for structure..
--pCustData->szFirstName = malloc(sizeof(pCustData->szFirstName))
 By above statement you are allocating only "sizeof(pCustData-
>szFirstName))" which may be max of 4 ..  Try with allocating more
memory to this structure ....
like .. pCustData->szFirstName = malloc(sizeof(char) * 100);
-- 
comp.lang.c.moderated - moderation address: clcm@[EMAIL PROTECTED]
 -- you must
have an appropriate newsgroups line in your header for your mail to be
seen,
or the newsgroup name in square brackets in the subject line.  Sorry.
 




 4 Posts in Topic:
Problem in writing structure to Binary file in C lang
zehra.mb@[EMAIL PROTECTED  2008-04-18 16:11:47 
Re: Problem in writing structure to Binary file in C lang
"Viridis.Luman@[EMAI  2008-04-21 13:18:47 
Re: Problem in writing structure to Binary file in C lang
Prashu <prashanthkumar  2008-04-21 13:20:16 
Re: Problem in writing structure to Binary file in C lang
Thomas Richter <thor@[  2008-04-21 13:21:22 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Thu Jul 24 16:08:24 CDT 2008.