Solved

c question

Posted on 2007-03-26
2
201 Views
Last Modified: 2010-04-15
what does a=(0) mean in this code.??

int main(){
    struct xyz{
           int i;
           };
        xyz *p,a=(10);
        *p=a;
        p->i=10;
        printf("%d",a.i);
        getch();
}
0
Comment
Question by:shilpi84
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 53

Accepted Solution

by:
Infinity08 earned 250 total points
ID: 18794598
It's not valid C.

Use this instead :

int main(){
  struct xyz {
    int i;
  };
  struct xyz *p, a = { 10 };  /* <-- the correct way to initialize a struct is with {}'s */
                              /* <-- you have to use "struct xyz" instead of just "xyz" */
  p = &a;   /*  <-- don't assign to *p, as you haven't allocated memory for it !! */
  p->i = 10;
  printf("%d", a.i);
  getch();
}
0
 
LVL 84

Assisted Solution

by:ozo
ozo earned 250 total points
ID: 18794629
assuming you meant
 struct xyz *p,a={10};
it means
struct xyz a;
a.i=10;

but
 *p=a;
refrerences an uninitialized pointer, which makes the behaviour of the program undefined
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Have you thought about creating an iPhone application (app), but didn't even know where to get started? Here's how: ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ Important pre-programming comments: I’ve never tri…
Summary: This tutorial covers some basics of pointer, pointer arithmetic and function pointer. What is a pointer: A pointer is a variable which holds an address. This address might be address of another variable/address of devices/address of fu…
Video by: Grant
The goal of this video is to provide viewers with basic examples to understand and use while-loops in the C programming language.
The goal of this video is to provide viewers with basic examples to understand how to create, access, and change arrays in the C programming language.

623 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question