DaniWeb IT Discussion Community

DaniWeb IT Discussion Community (http://www.daniweb.com/forums/index.php)
-   C (http://www.daniweb.com/forums/forum118.html)
-   -   Trouble with pointers (http://www.daniweb.com/forums/thread160474.html)

slimjimmer Dec 2nd, 2008 9:06 pm
Trouble with pointers
 
Hi,

In this piece of code in my program I am receiving the following error request for member âyâ in something not a structure or union.

struct intpair {
                int x ;
                int y ;
        } ;
       
        struct intpair makeintpair(int x, int y) {
        struct intpair temp ;
        temp.x = x ;
        temp.y = y ;
        return temp ;
        }
        struct intpair shared_data = makeintpair(5, 0) ;
        shared_data.y=5;
                        /* Declare and define data to be be */
       
                        /* shared by code running on threads. */
        struct intpair *psd ;                                /* Declare & define pointer to shared */
psd = &shared_data ;        /* data for threads (see below) to use to */
                                                        /* access shared data. */
        printf("%d",psd.y);

I can't seem use the data in psd. Can someone please help?

Thanks

Luckychap Dec 2nd, 2008 10:33 pm
Re: Trouble with pointers
 
In line:20 ie
printf("%d",psd.y);

psd is used to access y by dot(.) operator which is wrong because psd is a pointer and to access y you must use ->(arrow operator) ie

printf("%d",psd->y);


All times are GMT -4. The time now is 4:41 pm.

Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC