home | list info | list archive | date index | thread index

Re: [OCLUG-Tech] 'C' used in drivers question?

* William Case <billlinux [ at ] rogers [ dot ] com> [071207 12:10]:
> Hi;
> 
> I am patiently reading the O'Reily "Linux Device Drivers" and have come
> across the following line (and several like it):
> 
> int (*open) (struct inode *, struct file *)
> 
> I can interpret most of the line except the 'inode *' and 'file *'.  I
> have never seen the asterisk in C used in this fashion.  What does it
> mean?

This is a declarative statement.  You don't have to specify the name of
an argument if you're not defining the function body...

        int (*open) (struct inode *, struct file *);

can be read as

        int (*open) (struct inode *some_inode_ptr,
                        struct file *some_file_ptr);

if you so prefer.

-Bart

-- 
				WebSig: http://www.jukie.net/~bart/sig/